home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / lib / X11 / config / X11.tmpl < prev    next >
Text File  |  2006-04-12  |  118KB  |  4,784 lines

  1. XCOMM ----------------------------------------------------------------------
  2. XCOMM X Window System Build Parameters and Rules
  3. XCOMM $XdotOrg: xc/config/cf/X11.tmpl,v 1.35.2.3 2005/02/01 04:07:39 gisburn Exp $
  4. XCOMM $Xorg: X11.tmpl,v 1.6 2000/08/17 19:41:46 cpqbld Exp $
  5. XCOMM
  6. XCOMM
  7. XCOMM
  8. XCOMM
  9. XCOMM $XFree86: xc/config/cf/X11.tmpl,v 1.248 2004/02/16 04:07:37 dawes Exp $
  10.  
  11. /***************************************************************************
  12.  *                                                                         *
  13.  *                            DEFAULT DEFINITIONS                          *
  14.  *                                                                         *
  15.  * The following section contains defaults for things that can             *
  16.  * overridden in the various *.cf and site.def files.  DO NOT EDIT!        *
  17.  *                                                                         *
  18.  **************************************************************************/
  19.  
  20. #define ProjectX        604    /* do *not* change this line */
  21.  
  22. /* The following project-specific rules are defined at the end of this file:
  23.  *
  24.  * InstallAppDefaults        (class)
  25.  * InstallAppDefaultsLong    (file,class)
  26.  * MakeFontsDir            (deplist)
  27.  * MakeFcCache            (deplist)
  28.  * MakeFonts            ()
  29.  * InstallFontObjs        (objs,dest)
  30.  * InstallFonts            (dest)
  31.  * InstallFontAliases        (dest)
  32.  * InstallFcCache        (dest)
  33.  * FontSrc            (basename)
  34.  * FontBaseObj            (basename)
  35.  * InstallFontScale        (dest)
  36.  * UncompressedFontTarget    (basename)
  37.  * CompressedFontTarget        (basename)
  38.  * FontTarget            (basename)
  39.  * FontObj            (basename)
  40.  * MakeXkbDir            (basedir,subdir)
  41.  */
  42.  
  43. /* X.Org release string */
  44. #ifndef XOrgReleaseString
  45. # if defined XorgVersionString
  46. #   define XOrgReleaseString    Release XorgVersionString
  47. # else
  48. #   define XOrgReleaseString    Release 6.8
  49. # endif
  50. #endif
  51.  
  52. #ifndef XOrgManNameString
  53. #define XOrgManNameString    X Version 11
  54. #endif
  55. #ifndef XOrgNameString
  56. # define XOrgNameString   The X.Org Foundation
  57. #endif
  58. #ifndef XOrgNameStringShort
  59. # define XOrgNameStringShort   X.Org
  60. #endif
  61. #ifndef XOrgStdFilePrefix
  62. # define XOrgStdFilePrefix     xorg
  63. #endif
  64. #ifndef XOrgWebSupportAddress
  65. # define XOrgWebSupportAddress http://wiki.X.Org
  66. #endif
  67.  
  68. #ifndef XOrgManDefs
  69. #define XOrgManDefs -D__xorgversion__='"$(XORGRELSTRING)" "$(XORGMANNAME)"'
  70. #endif
  71.  
  72. #ifndef XVendorManNameString
  73. #define XVendorManNameString XOrgManNameString
  74. #endif
  75. #ifndef XVendorManVersionString
  76. #define XVendorManVersionString XOrgReleaseString
  77. #endif
  78. #ifndef XVendorNameString
  79. # define XVendorNameString XOrgNameString
  80. #endif
  81. #ifndef XVendorNameStringShort
  82. # define XVendorNameStringShort XOrgNameStringShort
  83. #endif
  84. #ifndef XVendorWebSupport
  85. # define XVendorWebSupport XOrgWebSupportAddress
  86. #endif
  87. #ifndef XVendorStdFilePrefix
  88. # define XVendorStdFilePrefix XOrgStdFilePrefix
  89. #endif
  90.  
  91. #ifndef VendorManDefs
  92. #define VendorManDefs -D__vendorversion__="$(VENDORMANVERSION) $(VENDORMANNAME)"
  93. #endif
  94.  
  95. #ifndef VendorDefines
  96. #define VendorDefines -DXVENDORNAME='"$(VENDORNAME)"' -DXVENDORNAMESHORT='"$(VENDORNAMESHORT)"'
  97. #endif
  98.  
  99. #ifndef VendorSupportDefines
  100. # if defined XVendorWebSupport
  101. #  define VendorSupportDefines -D__VENDORDWEBSUPPORT__='"$(VENDORWEBSUPPORT)"'
  102. # endif
  103. #endif
  104. /*
  105.  * X-specific things
  106.  */
  107. #if CrossCompiling && !defined(UseInstalledOnCrossCompile)
  108. # if defined(UseInstalled)
  109. #  define UseInstalledOnCrossCompile YES
  110. # else
  111. #  define UseInstalledOnCrossCompile NO
  112. # endif
  113. #endif
  114.  
  115. #ifndef HasXServer
  116. #define HasXServer        YES
  117. #endif
  118. /* xorg.cf sets XorgServer to YES - to build Xorg you must include xorg.cf 
  119.  * from the .cf file for your platform.
  120.  */
  121. #ifndef XorgServer
  122. #define XorgServer        NO  
  123. #endif
  124. #ifndef BuildServer
  125. #define BuildServer        HasXServer
  126. #endif
  127. #ifndef BuildServersOnly
  128. #define BuildServersOnly    NO
  129. #endif
  130. #ifndef BuildClients
  131. #define BuildClients        !BuildServersOnly
  132. #endif
  133. #ifndef BuildDocs
  134. #define BuildDocs        !BuildServersOnly
  135. #endif
  136. #ifndef BuildDmx
  137. #define BuildDmx        NO
  138. #endif
  139. #ifndef XdmxServer
  140. #define XdmxServer        BuildDmx
  141. #endif
  142. #ifndef BuildLibrariesForDmx
  143. #define BuildLibrariesForDmx    XdmxServer
  144. #endif
  145. #ifndef BuildLibraries
  146. #define BuildLibraries        (!BuildServersOnly || BuildClients || \
  147.                  BuildLibrariesForDmx)
  148. #endif
  149. #ifndef BuildLibrariesForXServers
  150. #define BuildLibrariesForXServers    BuildServer
  151. #endif
  152. #ifndef BuildFontServer
  153. #define BuildFontServer        YES
  154. #endif
  155. #ifndef XserverStaticFontLib
  156. #define XserverStaticFontLib    YES
  157. #endif
  158. #ifndef BuildSpeedo
  159. #define BuildSpeedo        NO
  160. #endif
  161. #ifndef BuildType1
  162. #define BuildType1        NO
  163. #endif
  164. #ifndef BuildCID
  165. #define BuildCID        YES
  166. #endif
  167. #ifndef BuildFreeType
  168. #define BuildFreeType        NO
  169. #endif
  170. #ifndef BuildBuiltinFonts
  171. #define BuildBuiltinFonts    NO
  172. #endif
  173. #ifndef BuildFonts
  174. #define BuildFonts        (BuildServer | BuildFontServer)
  175. #endif
  176. #ifndef Build75DpiFonts
  177. #define Build75DpiFonts        YES
  178. #endif
  179. #ifndef Build100DpiFonts
  180. #define Build100DpiFonts    YES
  181. #endif
  182. #ifndef BuildSpeedoFonts
  183. #define BuildSpeedoFonts    NO
  184. #endif
  185. #ifndef BuildType1Fonts
  186. #define BuildType1Fonts        YES
  187. #endif
  188. #ifndef BuildCIDFonts
  189. #define BuildCIDFonts        YES
  190. #endif
  191. #ifndef BuildTrueTypeFonts
  192. #define BuildTrueTypeFonts    YES
  193. #endif
  194. #ifndef BuildBethMarduthoFonts
  195. #define BuildBethMarduthoFonts    NO
  196. #endif
  197. #ifndef BuildEthiopicFonts
  198. #define BuildEthiopicFonts    NO
  199. #endif
  200. #ifndef BuildCyrillicFonts
  201. #define BuildCyrillicFonts    YES
  202. #endif
  203. /* Some bdf font generation details.  The scripts for this require perl. */
  204. #ifndef TruncateUCSFonts
  205. #define TruncateUCSFonts    HasPerl5
  206. #endif
  207. #ifndef MaxUCSChar
  208. #define MaxUCSChar        0x3200
  209. #endif
  210. #ifndef DerivedUCSFonts
  211. #define DerivedUCSFonts        YES
  212. #endif
  213. /* These primarily control generation of derived 8-bit fonts. */
  214. #ifndef BuildUCSFonts
  215. #define BuildUCSFonts        YES
  216. #endif
  217. /* Setting BuildISO8859_1Fonts to NO may result in problems. */
  218. #ifndef BuildISO8859_1Fonts
  219. #define BuildISO8859_1Fonts    YES
  220. #endif
  221. #ifndef BuildISO8859_2Fonts
  222. #define BuildISO8859_2Fonts    YES
  223. #endif
  224. #ifndef BuildISO8859_3Fonts
  225. #define BuildISO8859_3Fonts    YES
  226. #endif
  227. #ifndef BuildISO8859_4Fonts
  228. #define BuildISO8859_4Fonts    YES
  229. #endif
  230. #ifndef BuildISO8859_5Fonts
  231. #define BuildISO8859_5Fonts    BuildCyrillicFonts
  232. #endif
  233. #ifndef BuildArabicFonts
  234. #define BuildArabicFonts    YES
  235. #endif
  236. #ifndef BuildISO8859_6Fonts
  237. #define BuildISO8859_6Fonts    BuildArabicFonts
  238. #endif
  239. #ifndef BuildGreekFonts
  240. #define BuildGreekFonts        YES
  241. #endif
  242. #ifndef BuildISO8859_7Fonts
  243. #define BuildISO8859_7Fonts    BuildGreekFonts
  244. #endif
  245. #ifndef BuildHebrewFonts
  246. #define BuildHebrewFonts    YES
  247. #endif
  248. #ifndef BuildISO8859_8Fonts
  249. #define BuildISO8859_8Fonts    BuildHebrewFonts
  250. #endif
  251. #ifndef BuildISO8859_9Fonts
  252. #define BuildISO8859_9Fonts    YES
  253. #endif
  254. #ifndef BuildISO8859_10Fonts
  255. #define BuildISO8859_10Fonts    YES
  256. #endif
  257. #ifndef BuildThaiFonts
  258. #define BuildThaiFonts        YES
  259. #endif
  260. #ifndef BuildISO8859_11Fonts
  261. #define BuildISO8859_11Fonts    BuildThaiFonts
  262. #endif
  263. #ifndef BuildISO8859_13Fonts
  264. #define BuildISO8859_13Fonts    YES
  265. #endif
  266. #ifndef BuildISO8859_14Fonts
  267. #define BuildISO8859_14Fonts    YES
  268. #endif
  269. #ifndef BuildISO8859_15Fonts
  270. #define BuildISO8859_15Fonts    YES
  271. #endif
  272. #ifndef BuildISO8859_16Fonts
  273. #define BuildISO8859_16Fonts    YES
  274. #endif
  275. #ifndef BuildKOI8_RFonts
  276. #define BuildKOI8_RFonts    BuildCyrillicFonts
  277. #endif
  278. #ifndef BuildJapaneseFonts
  279. #define BuildJapaneseFonts    YES
  280. #endif
  281. #ifndef BuildJISX0201Fonts
  282. #define BuildJISX0201Fonts    BuildJapaneseFonts
  283. #endif
  284. #ifndef BuildKoreanFonts
  285. #define BuildKoreanFonts    YES
  286. #endif
  287. #ifndef BuildChineseFonts
  288. #define BuildChineseFonts    YES
  289. #endif
  290. #ifndef MakeLocalFontDir
  291. #define MakeLocalFontDir    YES
  292. #endif
  293. #ifndef HasXAudio
  294. #define HasXAudio        NO
  295. #endif
  296. #ifndef BuildXAudio
  297. #define BuildXAudio        (HasXAudio & HasCplusplus)
  298. #endif
  299. #ifndef HasXAServer
  300. #define HasXAServer        NO
  301. #endif
  302. #ifndef BuildXAServer
  303. #define BuildXAServer        (HasXAServer & HasCplusplus)
  304. #endif
  305. #ifndef BuildX11Lib
  306. #define BuildX11Lib        BuildLibraries
  307. #endif
  308.  
  309. #ifndef BuildLoadableXlibI18n
  310. #define BuildLoadableXlibI18n    (HasDlopen && SharedLibX11)
  311. #endif
  312. #ifndef InstallXcmsTxt
  313. #define InstallXcmsTxt        NO
  314. #endif
  315. /*
  316.  * This disables XLOCALEDIR.  Set it if you're using BuildLoadableXlibI18n,
  317.  * don't have either issetugid() or getresuid(), and you need to protect
  318.  * clients that are setgid or setuid to an id other than 0.
  319.  */
  320. #ifndef DisableXLocaleDirEnv
  321. #define DisableXLocaleDirEnv    BuildLoadableXlibI18n && \
  322.                     !(HasIssetugid || HasGetresuid)
  323. #endif
  324. #ifndef BuildLoadableXlibXcursor
  325. #define BuildLoadableXlibXcursor (HasDlopen && SharedLibX11)
  326. #endif
  327. #ifndef BuildXextLib
  328. #define BuildXextLib        BuildLibraries
  329. #endif
  330. #ifndef BuildXauLib
  331. #define BuildXauLib        (BuildLibraries || BuildLibrariesForXServers)
  332. #endif
  333. #define UseInstalledXauLib    (defined(UseInstalled) || !BuildXauLib)
  334. #ifndef BuildXdmcpLib
  335. #define BuildXdmcpLib        (BuildLibraries || BuildLibrariesForXServers)
  336. #endif
  337. #define UseInstalledXdmcpLib    (defined(UseInstalled) || !BuildXdmcpLib)
  338. #ifndef BuildMITMiscExt
  339. #define BuildMITMiscExt        YES
  340. #endif
  341. #ifndef BuildTestExt
  342. #define BuildTestExt        YES
  343. #endif
  344. #ifndef BuildSyncExt
  345. #define BuildSyncExt        YES
  346. #endif
  347. #ifndef BuildXCMiscExt
  348. #define BuildXCMiscExt        YES
  349. #endif
  350. #ifndef BuildShapeExt
  351. #define BuildShapeExt        YES
  352. #endif
  353. #ifndef BuildBigReqsExt
  354. #define BuildBigReqsExt        YES
  355. #endif
  356. #ifndef BuildXInputExt
  357. #define BuildXInputExt        NO
  358. #endif
  359. #ifndef BuildXInputLib
  360. #define BuildXInputLib        (BuildXInputExt && \
  361.                  (!BuildServersOnly || BuildLibrariesForDmx))
  362. #endif
  363. #ifndef BuildEVI
  364. #define BuildEVI        YES
  365. #endif
  366. #ifndef BuildDBE
  367. #define BuildDBE        YES
  368. #endif
  369. #ifndef BuildDBElib
  370. #define BuildDBElib        BuildDBE
  371. #endif
  372. #ifndef BuildDIS
  373. #define BuildDIS        NO
  374. #endif
  375. #ifndef BuildDPMS
  376. #define BuildDPMS        YES
  377. #endif
  378. #ifndef BuildFontLib
  379. #if (!defined(XF86Server) || !XF86Server) && (!defined (XorgServer) || !XorgServer)
  380. #define BuildFontLib        (BuildLibraries || BuildServer)
  381. #else
  382. #define BuildFontLib        (BuildLibraries || \
  383.                  (BuildServer && !DoLoadableServer) || \
  384.                  XnestServer || XVirtualFramebufferServer || \
  385.                  XprtServer || XdmxServer)
  386. #endif
  387. #endif
  388. #ifndef BuildFontCache
  389. #define BuildFontCache        NO
  390. #endif
  391. #ifndef BuildFontCacheLib
  392. #define BuildFontCacheLib    (BuildFontCache && !BuildServersOnly)
  393. #endif
  394. #ifndef BuildFontEncLib
  395. #define BuildFontEncLib        BuildLibraries
  396. #endif
  397. /*
  398.  * This enables binary compatibility with the older (XFree86 <= 4.1) fontenc
  399.  * entry points in the Xfont library (and X server).  If this is turned off,
  400.  * then SharedFontRev should have it's major revision bumped, and the
  401.  * XFree86 font module ABI (in xfree86/common/xf86Module.h) should have it's
  402.  * major revision bumped.
  403.  *
  404.  * Note: this does not enable those older functions in the separate libfontenc
  405.  * library (which didn't exist previously).
  406.  */
  407. #ifndef FontencCompatibility
  408. #define FontencCompatibility    YES
  409. #endif
  410. #ifndef BuildLowMem
  411. #define BuildLowMem        NO
  412. #endif
  413. #ifndef BuildLBX
  414. #define BuildLBX        YES
  415. #endif
  416. #ifndef BuildXKB
  417. #define BuildXKB        YES
  418. #endif
  419. #ifndef BuildXKBlib
  420. #define BuildXKBlib        (BuildXKB && (!BuildServersOnly || \
  421.                           XnestServer || XdmxServer))
  422. #endif
  423. #ifndef BuildXKBuilib
  424. #define BuildXKBuilib        (BuildXKB && !BuildServersOnly)
  425. #endif
  426. #ifndef BuildXKBfilelib
  427. #define BuildXKBfilelib        (BuildXKB && !BuildServersOnly)
  428. #endif
  429. #ifndef BuildXTrap
  430. #define BuildXTrap        YES
  431. #endif
  432. #ifndef BuildXTrapLibrary
  433. #define BuildXTrapLibrary    (BuildXTrap && !BuildServersOnly)
  434. #endif
  435.  
  436.     /*
  437.      * WARNING: Setting UseXKBInClients to YES cause incompatibilities
  438.      *          between many clients (such as xterm) and pre-XKB shared
  439.      *          libraries.
  440.      */
  441. #ifndef UseXKBInClients
  442. #define    UseXKBInClients        NO    /* use XKB in "normal" clients? */
  443. #endif
  444. #ifndef BuildMultibuffer
  445. #define BuildMultibuffer    NO
  446. #endif
  447. #ifndef BuildRECORD
  448. #define BuildRECORD        YES
  449. #endif
  450. #ifndef BuildRECORDlib
  451. #define BuildRECORDlib        BuildRECORD
  452. #endif
  453. #ifndef BuildXinerama
  454. #define BuildXinerama        NO
  455. #endif
  456. #ifndef BuildXineramaLibrary
  457. #define BuildXineramaLibrary    (BuildXinerama && !BuildServersOnly)
  458. #endif
  459. #ifndef BuildDmxDevelTools
  460. #define BuildDmxDevelTools    NO
  461. #endif
  462. #ifndef BuildDmxLibrary
  463. #define BuildDmxLibrary        (BuildDmx && \
  464.                  (!BuildServersOnly || BuildDmxDevelTools))
  465. #endif
  466. #ifndef BuildXCSecurity
  467. #define BuildXCSecurity        YES
  468. #endif
  469. #ifndef BuildAppgroup
  470. #define BuildAppgroup        YES
  471. #endif
  472. #ifndef BuildCup
  473. #define BuildCup        YES
  474. #endif
  475. #ifndef HasPlugin
  476. /* Browser plugins are shared libraries - only build them if the OS
  477.  * supports shared libs.
  478.  */
  479. #define HasPlugin        HasSharedLibraries
  480. #endif
  481. #ifndef BuildPlugin
  482. #define BuildPlugin        HasPlugin
  483. #endif
  484. #ifndef XpRasterDDX
  485. #define XpRasterDDX             YES
  486. #endif
  487. #ifndef XpColorPclDDX
  488. #define XpColorPclDDX           YES
  489. #endif
  490. #ifndef XpMonoPclDDX
  491. #define XpMonoPclDDX            YES
  492. #endif
  493. #ifndef XpPostScriptDDX
  494. #define XpPostScriptDDX         YES
  495. #endif
  496. #ifndef XpPdfDDX
  497. #define XpPdfDDX                YES
  498. #endif
  499. #ifndef XpSvgDDX
  500. #define XpSvgDDX                YES
  501. #endif
  502.  
  503. #ifndef BuildXprint
  504. #define BuildXprint        YES
  505. #endif
  506. #ifndef XprtServer
  507. #define XprtServer        (BuildServer && BuildXprint)
  508. #endif
  509. #ifndef BuildXprintLib
  510. #define BuildXprintLib        (!BuildServersOnly && BuildXprint)
  511. #endif
  512. #ifndef BuildXprintClients
  513. #define BuildXprintClients    BuildXprintLib
  514. #endif
  515.  
  516. #ifndef BuildScreenSaverExt
  517. #define BuildScreenSaverExt    NO
  518. #endif
  519. #ifndef BuildScreenSaverLibrary
  520. #define BuildScreenSaverLibrary    (BuildScreenSaverExt && !BuildServersOnly)
  521. #endif
  522. #ifndef BuildXF86VidModeExt
  523. #define BuildXF86VidModeExt    NO
  524. #endif
  525. #ifndef BuildXF86VidModeLibrary
  526. #define BuildXF86VidModeLibrary (BuildXF86VidModeExt && !BuildServersOnly)
  527. #endif
  528. #ifndef BuildXF86MiscExt
  529. #define BuildXF86MiscExt    NO
  530. #endif
  531. #ifndef BuildXF86MiscLibrary
  532. #define BuildXF86MiscLibrary    (BuildXF86MiscExt && !BuildServersOnly)
  533. #endif
  534. #ifndef BuildXF86BigfontExt
  535. #define BuildXF86BigfontExt    NO
  536. #endif
  537. #ifndef BuildXF86DGA
  538. #define BuildXF86DGA        NO
  539. #endif
  540. #ifndef BuildXF86DGALibrary
  541. #define BuildXF86DGALibrary    (BuildXF86DGA && !BuildServersOnly)
  542. #endif
  543. #ifndef BuildXResExt
  544. #define BuildXResExt            NO
  545. #endif
  546. #ifndef BuildXResLibrary
  547. #define BuildXResLibrary        (BuildXResExt && \
  548.                  (!BuildServersOnly || BuildDmxDevelTools))
  549. #endif
  550. #ifndef BuildXvExt
  551. #define BuildXvExt        NO
  552. #endif
  553. #ifndef BuildXvLibrary
  554. #define BuildXvLibrary        (BuildXvExt && !BuildServersOnly)
  555. #endif
  556. #ifndef BuildXvMCExt
  557. #define BuildXvMCExt        NO
  558. #endif
  559. #ifndef BuildXvMCLibrary
  560. #define BuildXvMCLibrary    (BuildXvMCExt && !BuildServersOnly)
  561. #endif
  562. #ifndef BuildGlxExt
  563. #define BuildGlxExt        NO
  564. #else
  565. #if     BuildGlxExt && !defined(XFree86Version) && !defined(XorgVersion)
  566. #undef  BuildXF86DRI
  567. #undef  BuildXF86DRIDriverSupport
  568. #define BuildXF86DRI            NO
  569. #define BuildXF86DRIDriverSupport    NO
  570. #endif
  571. #endif
  572. #ifndef BuildGLXLibrary
  573. #define BuildGLXLibrary        (BuildGlxExt && !BuildServersOnly)
  574. #endif
  575. #ifndef BuildOSMesaLib
  576. #define BuildOSMesaLib        BuildGlxExt
  577. #endif
  578. #ifndef BuildGLULibrary
  579. #define BuildGLULibrary        (BuildGLXLibrary && BuildLibraries && \
  580.                  HasCplusplus)
  581. #endif
  582. #ifndef BuildGLwLibrary
  583. #define BuildGLwLibrary        (BuildGLXLibrary && BuildLibraries)
  584. #endif
  585. #ifndef BuildXDriInfo
  586. #define BuildXDriInfo        (BuildGLXLibrary && !BuildServersOnly)
  587. #endif
  588. #ifndef BuildXF86RushExt
  589. #define BuildXF86RushExt    NO
  590. #endif
  591. #ifndef BuildXF86RushLibrary
  592. #define BuildXF86RushLibrary    (BuildXF86RushExt && !BuildServersOnly)
  593. #endif
  594. #ifndef BuildDPSLibraries
  595. #define BuildDPSLibraries    !BuildServersOnly
  596. #endif
  597. #ifndef BuildDPSLibrary
  598. #define BuildDPSLibrary        BuildDPSLibraries
  599. #endif
  600. #ifndef BuildDPSTkLibrary
  601. #define BuildDPSTkLibrary    BuildDPSLibraries
  602. #endif
  603. #ifndef BuildPSResLibrary
  604. #define BuildPSResLibrary    BuildDPSLibraries
  605. #endif
  606. #ifndef BuildDPSClients
  607. #define BuildDPSClients         BuildDPSLibraries
  608. #endif
  609. #ifndef BuildRender
  610. #define BuildRender        YES
  611. #endif
  612. #ifndef BuildRenderLibrary
  613. #define BuildRenderLibrary    (XdmxServer || !BuildServersOnly)
  614. #endif
  615. #ifndef BuildXftLibrary
  616. #define BuildXftLibrary        BuildRenderLibrary
  617. #endif
  618. #ifndef BuildXft1Library
  619. #define BuildXft1Library    BuildRenderLibrary
  620. #endif
  621. #ifndef UseFontconfig
  622. #define UseFontconfig        BuildXftLibrary
  623. #endif
  624. #ifndef BuildFontconfigLibrary
  625. #define BuildFontconfigLibrary    (UseFontconfig && !HasFontconfig)
  626. #endif
  627. #ifndef UseFreetype2
  628. #define UseFreetype2        (BuildXftLibrary || BuildXft1Library || \
  629.                  UseFontconfig || BuildFreeType)
  630. #endif
  631. #ifndef InstallFontconfigLibrary
  632. # define InstallFontconfigLibrary  YES
  633. #endif
  634. #ifndef HasExpat
  635. #define HasExpat        NO
  636. #endif
  637. #ifndef UseExpat
  638. #define UseExpat        (UseFontconfig || BuildXF86DRI)
  639. #endif
  640. #ifndef BuildExpatLibrary
  641. #define BuildExpatLibrary    (UseExpat && !HasExpat)
  642. #endif
  643. #ifndef BuildFreetype2Library
  644. #define BuildFreetype2Library    (UseFreetype2 && !HasFreetype2)
  645. #endif
  646. #ifndef Freetype2BuildDefines
  647. #define Freetype2BuildDefines    /**/
  648. #endif
  649.  
  650. #ifndef BuildRandR
  651. #define BuildRandR        YES
  652. #endif
  653. #ifndef BuildRandRLibrary
  654. #define BuildRandRLibrary    !BuildServersOnly
  655. #endif
  656.  
  657. #ifndef BuildXfixes
  658. #define BuildXfixes        YES
  659. #endif
  660. #ifndef BuildXfixesLibrary
  661. #define BuildXfixesLibrary    !BuildServersOnly
  662. #endif
  663.  
  664. #ifndef BuildDamage
  665. #define BuildDamage        BuildXfixes
  666. #endif
  667. #ifndef BuildDamageLibrary
  668. #define BuildDamageLibrary    !BuildServersOnly
  669. #endif
  670.  
  671. #ifndef BuildComposite
  672. #define BuildComposite        (BuildXfixes && BuildDamage)
  673. #endif
  674. #ifndef BuildCompositeLibrary
  675. #define BuildCompositeLibrary    !BuildServersOnly && (BuildXfixesLibrary && \
  676.                 BuildDamageLibrary)
  677. #endif
  678.  
  679. #ifndef BuildXevie
  680. #define BuildXevie        YES
  681. #endif
  682. #ifndef BuildXevieLibrary
  683. #define BuildXevieLibrary    !BuildServersOnly
  684. #endif
  685.  
  686. #ifndef BuildRootless
  687. #define BuildRootless    NO
  688. #endif
  689.  
  690. #ifndef BuildXterm
  691. #define BuildXterm        BuildClients
  692. #endif
  693.  
  694. #ifndef BuildXcursorLibrary
  695. #define BuildXcursorLibrary    BuildRenderLibrary
  696. #endif
  697.  
  698. #ifndef BuildXcursorgen
  699. #define BuildXcursorgen        HasLibpng
  700. #endif
  701.  
  702. #ifndef DefaultCursorTheme
  703. #define DefaultCursorTheme    core
  704. #endif
  705.  
  706. #ifndef BuildAppleWMLibrary
  707. #define BuildAppleWMLibrary    NO
  708. #endif
  709.  
  710. #ifndef BuildWindowsWMLibrary
  711. #define BuildWindowsWMLibrary    NO
  712. #endif
  713.  
  714. #ifndef BuildMiscDocs
  715. #define BuildMiscDocs        NO
  716. #endif
  717. #ifndef BuildSpecsDocs
  718. #define BuildSpecsDocs        NO
  719. #endif
  720. #ifndef BuildAllSpecsDocs
  721. #define BuildAllSpecsDocs    NO
  722. #endif
  723.  
  724. #ifndef InstallHardcopyDocs
  725. #define InstallHardcopyDocs    YES
  726. #endif
  727.  
  728. #ifndef InstallMiscManPages
  729. #define InstallMiscManPages    YES
  730. #endif
  731.  
  732. #ifndef FSUseSyslog
  733. #define FSUseSyslog        NO
  734. #endif
  735.  
  736. #ifndef InstallLibManPages
  737. #define InstallLibManPages    YES
  738. #endif
  739. #ifndef InstallXtermSetUID
  740. #define InstallXtermSetUID    YES    /* xterm needs to be set uid */
  741. #endif
  742. #ifndef InstallXloadSetGID
  743. #define InstallXloadSetGID    YES    /* xload often needs set gid kmem */
  744. #endif
  745. #ifndef InstallXinitConfig
  746. #define InstallXinitConfig    NO    /* install sample xinit config */
  747. #endif
  748. #ifndef InstallXdmConfig
  749. #define InstallXdmConfig    NO    /* install sample xdm config */
  750. #endif
  751. #ifndef XdmServersType            /* what Xservers files to use */
  752. #if BuildServer
  753. #define XdmServersType ws
  754. #else
  755. #define XdmServersType fs
  756. #endif
  757. #endif
  758. #ifndef InstallFSConfig
  759. #define InstallFSConfig        NO    /* install sample fs config */
  760. #endif
  761. #ifndef InstallAppDefFiles
  762. #define InstallAppDefFiles    YES    /* install application defaults */
  763. #endif
  764. #ifndef UseConfDirForAppDefaults
  765. #define UseConfDirForAppDefaults YES
  766. #endif
  767. #ifndef UseConfDirForXkb
  768. #define UseConfDirForXkb    YES
  769. #endif
  770. #ifndef CompressAllFonts
  771. #define CompressAllFonts    NO
  772. #endif
  773. #ifndef ThreadedX
  774. #if HasPosixThreads || HasCThreads
  775. #define ThreadedX        YES    /* multi-threaded libraries */
  776. #else
  777. #define ThreadedX        NO
  778. #endif
  779. #endif
  780. #ifndef ThreadedProject
  781. #define ThreadedProject ThreadedX
  782. #endif
  783. #ifndef NeedUIThrStubs
  784. #define NeedUIThrStubs        NO
  785. #endif
  786. #ifndef HasWChar32
  787. #define HasWChar32        SystemV4
  788. #endif
  789. #ifndef HasXdmAuth
  790. #define HasXdmAuth        NO    /* if you can not use XDM-AUTH* */
  791. #endif
  792. #ifndef PrimaryScreenResolution
  793. #define PrimaryScreenResolution 72        /* a common resolution */
  794. #endif
  795. #ifndef DefaultFontPath
  796.     /*
  797.      * Turn off building Type1 and CID fonts if you are building
  798.      * for low memory footprint
  799.      */
  800. #if BuildLowMem
  801. #define DefaultFontPath $(FONTDIR)/misc/,$(FONTDIR)/75dpi/,$(FONTDIR)/100dpi/
  802. #else
  803. #if PrimaryScreenResolution < 88        /* (75 + 100) / 2 */
  804. #define DefaultFontPath $(FONTDIR)/misc/,$(FONTDIR)/TTF/,$(FONTDIR)/Type1/,$(FONTDIR)/CID/,$(FONTDIR)/75dpi/,$(FONTDIR)/100dpi/
  805. #else
  806. #define DefaultFontPath $(FONTDIR)/misc/,$(FONTDIR)/TTF/,$(FONTDIR)/Type1/,$(FONTDIR)/CID/,$(FONTDIR)/100dpi/,$(FONTDIR)/75dpi/
  807. #endif
  808. #endif
  809. #endif
  810. #ifndef DefaultFSFontPath
  811.     /*
  812.      * Define a default fontpath for Font Server independent of that
  813.          * for X server if building the X server for low memory footprint
  814.          */
  815. #if BuildLowMem
  816. #if PrimaryScreenResolution < 88                /* (75 + 100) / 2 */
  817. #define DefaultFSFontPath $(FONTDIR)/misc/,$(FONTDIR)/Type1/,$(FONTDIR)/CID/,$(FONTDIR)/75dpi/,$(FONTDIR)/100dpi/
  818. #else
  819. #define DefaultFSFontPath $(FONTDIR)/misc/,$(FONTDIR)/Type1/,$(FONTDIR)/CID/,$(FONTDIR)/100dpi/,$(FONTDIR)/75dpi/
  820. #endif
  821. #else
  822. #define DefaultFSFontPath DefaultFontPath
  823. #endif
  824. #endif
  825. #ifndef DefaultRGBDatabase
  826. #define DefaultRGBDatabase $(LIBDIR)/rgb
  827. #endif
  828. #ifndef UseRgbTxt
  829. #define UseRgbTxt        NO    /* default is to compile with dbm */
  830. #endif
  831. #ifndef UseMemLeak
  832. #define UseMemLeak        NO
  833. #endif
  834. #ifndef SpecialMalloc
  835. #define SpecialMalloc        NO
  836. #endif
  837. #ifndef UseInternalMalloc
  838. #define UseInternalMalloc    NO
  839. #endif
  840. #ifndef XallocDefines
  841. #define XallocDefines        /**/
  842. #endif
  843. #ifndef ServerErrorDefines
  844. #define ServerErrorDefines    /**/
  845. #endif
  846. #ifndef FontCompilerFlags
  847. #define FontCompilerFlags -t
  848. #endif
  849. /*
  850.  * NOTE:  IPv6Flags could be tacked on to either ConnectionFlags or
  851.  *        ExtraConnectionDefs.  Here, we choose the later in order to
  852.  *        maximise exposure of the IPv6 code (a number of <OS>.def files
  853.  *        contain ConnectionFlags overrides).  Mind you, this might not
  854.  *        the right thing to do when HasStreams is asserted.
  855.  */
  856. #ifndef BuildIPv6        /* If the OS also #define's AF_INET6 */
  857. #define BuildIPv6        YES
  858. #endif
  859. #ifndef IPv6Flags
  860. #if BuildIPv6
  861. #define IPv6Flags -DIPv6
  862. #else
  863. #define IPv6Flags /**/
  864. #endif
  865. #endif
  866. /*
  867.  * Assume by default that IPv6 sockets also listen for IPv4 connections.
  868.  * XDMCP support currently only works for both IPv4 and IPv6 when this is
  869.  * true.
  870.  */
  871. #ifndef IPv6SocketsAlsoIPv4
  872. #define IPv6SocketsAlsoIPv4    YES
  873. #endif
  874. #ifndef DECnetFlags
  875. #if HasDECnet
  876. #define DECnetFlags -DDNETCONN
  877. #else
  878. #define DECnetFlags
  879. #endif
  880. #endif
  881. #ifndef ConnectionFlags
  882. #if HasStreams
  883. #define ConnectionFlags -DSTREAMSCONN
  884. #else
  885. #define ConnectionFlags -DTCPCONN -DUNIXCONN DECnetFlags
  886. #endif
  887. #endif
  888. #if HasStickyDirBit
  889. STICKY_DEFINES = -DHAS_STICKY_DIR_BIT
  890. #endif
  891. #if HasFchown
  892. FCHOWN_DEFINES = -DHAS_FCHOWN
  893. #endif
  894. #ifndef ExtraConnectionDefs
  895. #define ExtraConnectionDefs $(STICKY_DEFINES) $(FCHOWN_DEFINES) IPv6Flags
  896. #endif
  897. #ifndef ProjectThreadsDefines
  898. #define ProjectThreadsDefines -DXTHREADS
  899. #endif
  900. #ifndef FontOSDefines
  901. #define FontOSDefines /**/
  902. #endif
  903. #ifndef FontDefines
  904. #define FontDefines -DFONT_SNF -DFONT_BDF -DFONT_PCF -DCOMPRESSED_FONTS FontOSDefines
  905. #endif
  906. #ifndef XawI18nDefines
  907. #if SystemV4
  908. #define XawI18nDefines -DHAS_WCTYPE_H
  909. #else
  910. #define XawI18nDefines -DUSE_XWCHAR_STRING
  911. #endif
  912. #endif
  913. #if Malloc0ReturnsNull
  914. #ifndef XMalloc0ReturnsNullDefines
  915. #define XMalloc0ReturnsNullDefines Malloc0ReturnsNullDefines
  916. #endif
  917. #ifndef XtMalloc0ReturnsNullDefines
  918. #define XtMalloc0ReturnsNullDefines Malloc0ReturnsNullDefines -DXTMALLOC_BC
  919. #endif
  920. #endif
  921. #ifndef ExtensionOSDefines
  922. #define ExtensionOSDefines /**/
  923. #endif
  924.  
  925. #ifndef ExtensionDefines
  926. #ifndef MITMiscDefines
  927. #if BuildMITMiscExt
  928. #define MITMiscDefines -DMITMISC
  929. #else
  930. #define MITMiscDefines /**/
  931. #endif
  932. #endif
  933. #ifndef XTestDefines
  934. #if BuildTestExt
  935. #define XTestDefines -DXTEST
  936. #else
  937. #define XTestDefines /**/
  938. #endif
  939. #endif
  940. #ifndef XTrapDefines
  941. #if BuildXTrap
  942. #define XTrapDefines -DXTRAP
  943. #else
  944. #define XTrapDefines /**/
  945. #endif
  946. #endif
  947. #ifndef XSyncDefines
  948. #if BuildSyncExt
  949. #define XSyncDefines -DXSYNC
  950. #else
  951. #define XSyncDefines /**/
  952. #endif
  953. #endif
  954. #ifndef XCMiscDefines
  955. #if BuildXCMiscExt
  956. #define XCMiscDefines -DXCMISC
  957. #else
  958. #define XCMiscDefines /**/
  959. #endif
  960. #endif
  961. #ifndef ShapeDefines
  962. #if BuildShapeExt
  963. #define ShapeDefines -DSHAPE
  964. #else
  965. #define ShapeDefines /**/
  966. #endif
  967. #endif
  968. #ifndef GlxDefines
  969. #if BuildGlxExt
  970. #ifdef GlxExtraDefines
  971. #define GlxDefines -DGLXEXT GlxExtraDefines
  972. #else
  973. #define GlxDefines -DGLXEXT
  974. #endif
  975. #else
  976. #define GlxDefines /**/
  977. #endif
  978. #endif
  979. #ifndef DRMSrcDir
  980. #define DRMSrcDir $(TOP)/extras/drm
  981. #endif
  982. #ifndef MesaSrcDir
  983. #define MesaSrcDir $(TOP)/extras/Mesa
  984. #endif
  985. #ifndef OglSampleSrcDir
  986. #define OglSampleSrcDir $(TOP)/extras/ogl-sample
  987. #endif
  988. #ifndef ShmDefines
  989. #if HasShm
  990. #define ShmDefines -DMITSHM
  991. #else
  992. #define ShmDefines /**/
  993. #endif
  994. #endif
  995. #ifndef XInputDefines
  996. #if BuildXInputExt
  997. #define XInputDefines -DXINPUT
  998. #else
  999. #define XInputDefines /**/
  1000. #endif
  1001. #endif
  1002. #ifndef XineramaDefines
  1003. #if BuildXinerama
  1004. #define XineramaDefines -DPANORAMIX
  1005. #else
  1006. #define XineramaDefines /**/
  1007. #endif
  1008. #endif
  1009. #ifndef PrintOnlyServer
  1010. #define PrintOnlyServer YES
  1011. #endif
  1012. #ifndef XprintDefines
  1013. #if BuildXprint
  1014. #if PrintOnlyServer
  1015. #define XprintDefines -DPIXPRIV
  1016. #else
  1017. #define XprintDefines -DXPRINT -DPIXPRIV
  1018. #endif
  1019. #else
  1020. #define XprintDefines /**/
  1021. #endif
  1022. #endif
  1023. #ifndef XkbDefines
  1024. #if BuildXKB
  1025. #define XkbDefines -DXKB
  1026. #else
  1027. #define XkbDefines /**/
  1028. #endif
  1029. #endif
  1030. #ifndef XkbClientDefines
  1031. #if UseXKBInClients
  1032. #define XkbClientDefines -DXKB
  1033. #else
  1034. #define XkbClientDefines /**/
  1035. #endif
  1036. #endif
  1037. #ifndef XkbServerDefines
  1038. #define XkbServerDefines /**/
  1039. #endif
  1040. #ifndef XkbDefRulesDefines
  1041. #define XkbDefRulesDefines  -D__XKBDEFRULES__='"$(XKBDEFRULES)"'
  1042. #endif
  1043. # ifndef XkbDefaultRulesFile
  1044. # define XkbDefaultRulesFile  XVendorStdFilePrefix
  1045. #endif
  1046. #ifndef LbxDefines
  1047. #if BuildLBX
  1048. #define LbxDefines -DLBX
  1049. #else
  1050. #define LbxDefines /**/
  1051. #endif
  1052. #endif
  1053. #ifndef BigReqDefines
  1054. #if BuildBigReqsExt
  1055. #define BigReqDefines -DBIGREQS
  1056. #else
  1057. #define BigReqDefines /**/
  1058. #endif
  1059. #endif
  1060.  
  1061. #ifndef EVIDefines
  1062. #if BuildEVI
  1063. #define EVIDefines -DEVI
  1064. #else
  1065. #define EVIDefines /**/
  1066. #endif
  1067. #endif
  1068.  
  1069. #ifndef DBEDefines
  1070. #if BuildDBE
  1071. #define DBEDefines -DDBE
  1072. #else
  1073. #define DBEDefines /**/
  1074. #endif
  1075. #endif
  1076.  
  1077. #ifndef PervasiveDBEDefines
  1078. #define PervasiveDBEDefines /* -DNEED_DBE_BUF_BITS -DNEED_DBE_BUF_VALIDATE */
  1079. #endif
  1080.  
  1081. #ifndef MultibufferDefines
  1082. #if BuildMultibuffer
  1083. #define MultibufferDefines -DMULTIBUFFER
  1084. #else
  1085. #define MultibufferDefines /**/
  1086. #endif
  1087. #endif
  1088.  
  1089. #ifndef ScreenSaverExtensionDefines
  1090. #if BuildScreenSaverExt
  1091. #define ScreenSaverExtensionDefines -DSCREENSAVER
  1092. #else
  1093. #define ScreenSaverExtensionDefines /**/
  1094. #endif
  1095. #endif
  1096. #ifndef VidModeExtensionDefines
  1097. #if BuildXF86VidModeExt
  1098. #define VidModeExtensionDefines -DXF86VIDMODE
  1099. #else
  1100. #define VidModeExtensionDefines /**/
  1101. #endif
  1102. #endif
  1103. #ifndef XF86MiscExtensionDefines
  1104. #if BuildXF86MiscExt
  1105. #define XF86MiscExtensionDefines -DXF86MISC
  1106. #else
  1107. #define XF86MiscExtensionDefines /**/
  1108. #endif
  1109. #endif
  1110.  
  1111. #ifndef XF86BigfontExtensionDefines
  1112. #if BuildXF86BigfontExt
  1113. #define XF86BigfontExtensionDefines -DXF86BIGFONT
  1114. #else
  1115. #define XF86BigfontExtensionDefines /**/
  1116. #endif
  1117. #endif
  1118.  
  1119. #ifndef XvExtensionDefines
  1120. #if BuildXvExt
  1121. #define XvExtensionDefines -DXV
  1122. #else
  1123. #define XvExtensionDefines /**/
  1124. #endif
  1125. #endif
  1126.  
  1127. #ifndef XvMCExtensionDefines
  1128. #if BuildXvMCExt
  1129. #define XvMCExtensionDefines -DXVMC
  1130. #else
  1131. #define XvMCExtensionDefines /**/
  1132. #endif
  1133. #endif
  1134.  
  1135. #ifndef XResExtensionDefines
  1136. #if BuildXResExt
  1137. #define XResExtensionDefines -DRES
  1138. #else
  1139. #define XResExtensionDefines /**/
  1140. #endif
  1141. #endif
  1142.  
  1143. #ifndef RECORDDefines
  1144. #if BuildRECORD
  1145. #define RECORDDefines -DXRECORD
  1146. #else
  1147. #define RECORDDefines /**/
  1148. #endif
  1149. #endif
  1150.  
  1151. #ifndef AppgroupDefines
  1152. #if BuildAppgroup
  1153. #define AppgroupDefines -DXAPPGROUP
  1154. #else
  1155. #define AppgroupDefines /**/
  1156. #endif
  1157. #endif
  1158.  
  1159. #ifndef XCSecurityDefines
  1160. #if BuildXCSecurity
  1161. #define XCSecurityDefines -DXCSECURITY
  1162. #else
  1163. #define XCSecurityDefines /**/
  1164. #endif
  1165. #endif
  1166.  
  1167. #ifndef CupDefines
  1168. #if BuildCup
  1169. #define CupDefines -DTOGCUP
  1170. #else
  1171. #define CupDefines /**/
  1172. #endif
  1173. #endif
  1174.  
  1175. #ifndef LowMemDefines
  1176. #if BuildLowMem
  1177. #define LowMemDefines -DLOWMEMFTPT
  1178. #else
  1179. #define LowMemDefines /**/
  1180. #endif
  1181. #endif
  1182.  
  1183. #ifndef DPMSDefines
  1184. #if BuildDPMS
  1185. #define DPMSDefines -DDPMSExtension
  1186. #else
  1187. #define DPMSDefines /**/
  1188. #endif
  1189. #endif
  1190.  
  1191. #ifndef RenderDefines
  1192. #if BuildRender
  1193. #define RenderDefines -DRENDER
  1194. #else
  1195. #define RenderDefines /**/
  1196. #endif
  1197. #endif
  1198.  
  1199. #ifndef RandRDefines
  1200. #if BuildRandR
  1201. #define RandRDefines -DRANDR
  1202. #else
  1203. #define RandRDefines /**/
  1204. #endif
  1205. #endif
  1206.  
  1207. #ifndef FontCacheExtentionDefines
  1208. #if BuildFontCache
  1209. #define FontCacheExtensionDefines    -DFONTCACHE
  1210. #else
  1211. #define FontCacheExtensionDefines    /**/
  1212. #endif
  1213. #endif
  1214.  
  1215. #ifndef XfixesDefines
  1216. #if BuildXfixes
  1217. #define XfixesDefines -DXFIXES
  1218. #else
  1219. #define XfixesDefines /**/
  1220. #endif
  1221. #endif
  1222.  
  1223. #ifndef XDamageDefines
  1224. #if BuildDamage
  1225. #define XDamageDefines -DDAMAGE
  1226. #else
  1227. #define XDamageDefines /**/
  1228. #endif
  1229. #endif
  1230.  
  1231. #ifndef CompositeDefines
  1232. #if BuildComposite
  1233. #define CompositeDefines -DCOMPOSITE
  1234. #else
  1235. #define CompositeDefines /**/
  1236. #endif
  1237. #endif
  1238.  
  1239. #ifndef XevieDefines
  1240. #if BuildXevie
  1241. #define XevieDefines -DXEVIE
  1242. #else
  1243. #define XevieDefines /**/
  1244. #endif
  1245. #endif
  1246.  
  1247. #ifndef RootlessDefines
  1248. #if BuildRootless
  1249. #define RootlessDefines -DROOTLESS
  1250. #else
  1251. #define RootlessDefines /**/
  1252. #endif
  1253. #endif
  1254.  
  1255. #ifndef SitePervasiveExtensionDefines
  1256. #define SitePervasiveExtensionDefines /**/
  1257. #endif
  1258. #ifndef PervasiveExtensionDefines
  1259. #define PervasiveExtensionDefines \
  1260.     ShapeDefines XInputDefines XkbDefines LbxDefines AppgroupDefines \
  1261.     XCSecurityDefines CupDefines PervasiveDBEDefines \
  1262.     XF86BigfontExtensionDefines DPMSDefines \
  1263.     LowMemDefines XprintDefines XineramaDefines \
  1264.     SitePervasiveExtensionDefines RenderDefines RandRDefines \
  1265.     XfixesDefines XDamageDefines CompositeDefines XevieDefines \
  1266.     RootlessDefines
  1267. #endif
  1268. #ifndef SiteExtensionDefines
  1269. #define SiteExtensionDefines /**/
  1270. #endif
  1271. #ifndef BaseExtensionDefines
  1272. #define BaseExtensionDefines \
  1273.     MultibufferDefines MITMiscDefines XTestDefines XTrapDefines \
  1274.     XSyncDefines XCMiscDefines RECORDDefines \
  1275.     ShmDefines BigReqDefines VidModeExtensionDefines \
  1276.     XF86MiscExtensionDefines DBEDefines DPMSDefines EVIDefines \
  1277.     ScreenSaverExtensionDefines XvExtensionDefines XvMCExtensionDefines \
  1278.     GlxDefines FontCacheExtensionDefines SiteExtensionDefines \
  1279.         XResExtensionDefines
  1280. #endif
  1281. #define ExtensionDefines BaseExtensionDefines ExtensionOSDefines
  1282. #endif /* ExtensionDefines */
  1283.  
  1284. #ifndef HasStrcasecmp
  1285. #define HasStrcasecmp YES
  1286. #endif
  1287.  
  1288. #ifndef StrcasecmpDefines
  1289. # if HasStrcasecmp
  1290. #  define StrcasecmpDefines /**/
  1291. # else
  1292. #  define StrcasecmpDefines -DNEED_STRCASECMP
  1293. # endif
  1294. #endif
  1295.  
  1296. #ifndef HasDevRandom
  1297. #define HasDevRandom NO
  1298. #endif
  1299.  
  1300. #ifndef HasArc4Random
  1301. #define HasArc4Random NO
  1302. #endif
  1303.  
  1304. #ifndef RandomDefines
  1305. # if HasDevRandom
  1306. #  ifndef RandomDeviceFile
  1307. #   define RandomDeviceFile /dev/random
  1308. #  endif
  1309. #  ifndef ExtraRandomDefines
  1310. #   ifdef PollDevRandom /* Set if can poll() /dev/random to avoid blocking */
  1311. #    define ExtraRandomDefines -DPOLL_DEV_RANDOM
  1312. #   else
  1313. #    define ExtraRandomDefines /**/
  1314. #   endif
  1315. #  endif
  1316. #  define RandomDefines -DDEV_RANDOM=\"RandomDeviceFile\" ExtraRandomDefines
  1317. # elif HasArc4Random
  1318. #  define RandomDefines -DARC4_RANDOM
  1319. # else
  1320. #  define RandomDefines /**/
  1321. # endif
  1322. #endif
  1323.  
  1324. #ifndef PreferXdmcpIPv6
  1325. #define PreferXdmcpIPv6 NO
  1326. #endif
  1327. #ifndef ServerXdmcpIPv6Defines
  1328. #if BuildIPv6 && !IPv6SocketsAlsoIPv4 && !PreferXdmcpIPv6
  1329. #define ServerXdmcpIPv6Defines -DXDMCP_NO_IPV6
  1330. #else
  1331. #define ServerXdmcpIPv6Defines /**/
  1332. #endif
  1333. #endif
  1334.  
  1335. #ifndef ServerXdmcpDefines
  1336. #define ServerXdmcpDefines -DXDMCP ServerXdmcpIPv6Defines
  1337. #endif
  1338. #ifndef ServerOSDefines
  1339. #define ServerOSDefines /**/
  1340. #endif
  1341. #if HasKrbIV
  1342. #ifndef KrbIVDefines
  1343. #define KrbIVDefines -DKERBEROS
  1344. #endif
  1345. #else
  1346. #define KrbIVDefines /**/
  1347. #endif
  1348. #if HasKrb5
  1349. #ifndef Krb5Defines
  1350. #define Krb5Defines -DK5AUTH
  1351. #endif
  1352. #else
  1353. #define Krb5Defines /**/
  1354. #endif
  1355. #ifndef ServerExtraDefines
  1356. #define ServerExtraDefines /* -DPIXPRIV */
  1357. #endif
  1358. #ifndef ServerAssertDefines
  1359. #define ServerAssertDefines -DNDEBUG
  1360. #endif
  1361. #ifndef ServerSnprintfDefines
  1362. #if !HasSnprintf
  1363. #define ServerSnprintfDefines -DNEED_SNPRINTF
  1364. #else
  1365. #define ServerSnprintfDefines /**/
  1366. #endif
  1367. #endif
  1368. #ifndef ServerDefines
  1369. #define ServerDefines StandardDefines PervasiveExtensionDefines ServerExtraDefines ServerAssertDefines ServerSnprintfDefines
  1370. #endif
  1371.  
  1372. #ifndef MesaUseX86Asm
  1373. /* The current Mesa X86 ASM code doesn't work well with SVR4 shared libs. */
  1374. # if HasX86Support && !SystemV4
  1375. #  define MesaUseX86Asm YES
  1376. # else
  1377. #  define MesaUseX86Asm NO
  1378. # endif
  1379. #endif
  1380.  
  1381. #ifndef MesaUseMMX
  1382. #ifdef HasMMXSupport
  1383. #define MesaUseMMX HasMMXSupport
  1384. #else
  1385. #define MesaUseMMX NO
  1386. #endif
  1387. #endif
  1388.  
  1389. #ifndef MesaUse3DNow
  1390. #ifdef Has3DNowSupport
  1391. #define MesaUse3DNow Has3DNowSupport
  1392. #else
  1393. #define MesaUse3DNow NO
  1394. #endif
  1395. #endif
  1396.  
  1397. #ifndef MesaUseSSE
  1398. #ifdef HasSSESupport
  1399. #define MesaUseSSE HasSSESupport
  1400. #else
  1401. #define MesaUseSSE NO
  1402. #endif
  1403. #endif
  1404.  
  1405. /* For compatibility */
  1406. #ifdef HasSSESupport
  1407. #undef HasKatmaiSupport
  1408. #define HasKatmaiSupport HasSSESupport
  1409. #endif
  1410. #undef MesaUseKatmai
  1411. #define MesaUseKatmai MesaUseSSE
  1412.  
  1413. #ifndef UsbMouseSupport
  1414. # define UsbMouseSupport NO
  1415. #endif
  1416.  
  1417. #ifndef DefaultFSConfigFile
  1418. #define DefaultFSConfigFile $(LIBDIR)/fs/config
  1419. #endif
  1420.  
  1421. #ifndef BinDir
  1422. #ifdef ProjectRoot
  1423. #define BinDir Concat(ProjectRoot,/bin)
  1424. #else
  1425. #define BinDir /usr/bin/X11
  1426. #endif
  1427. #endif
  1428. #ifndef BuildIncRoot
  1429. #define BuildIncRoot $(TOP)/exports
  1430. #endif
  1431. #ifndef BuildIncDir
  1432. #define BuildIncDir $(BUILDINCROOT)/include
  1433. #endif
  1434. #ifndef BuildIncTop
  1435. #define BuildIncTop ../..    /* relative to BuildIncDir */
  1436. #endif
  1437. #ifndef XTop
  1438. # if ImportX11
  1439. #  define XTop $(TOP)/imports/x11
  1440. # else
  1441. #  define XTop $(TOP)
  1442. # endif
  1443. #endif
  1444. #ifndef XBuildIncRoot
  1445. # if ImportX11
  1446. #  define XBuildIncRoot    $(XTOP)
  1447. # else
  1448. #  define XBuildIncRoot    $(XTOP)/exports
  1449. # endif
  1450. #endif
  1451. #ifndef XBuildIncDir
  1452. # define XBuildIncDir    $(XBUILDINCROOT)/include/X11
  1453. #endif
  1454. #ifndef XBuildIncTop
  1455. # define XBuildIncTop    ../../..
  1456. #endif
  1457. #ifndef XBuildBinDir
  1458. # define XBuildBinDir    $(XBUILDINCROOT)/bin
  1459. #endif
  1460. #ifndef BuildBinDir
  1461. #define BuildBinDir $(TOP)/exports/bin
  1462. #endif
  1463. #ifndef BuildBinTop
  1464. #define BuildBinTop ../..    /* relative to BuildBinDir */
  1465. #endif
  1466. #ifndef BuildLibDir
  1467. #define BuildLibDir $(TOP)/exports/lib
  1468. #endif
  1469. #ifndef BuildLibTop
  1470. #define BuildLibTop ../..    /* relative to BuildLibDir */
  1471. #endif
  1472. #ifndef BuildModuleDir
  1473. #define BuildModuleDir $(BUILDLIBDIR)/modules
  1474. #endif
  1475. #ifndef BuildI18NDir
  1476. # define BuildI18NDir $(BUILDLIBDIR)/locale
  1477. #endif
  1478. #ifndef BuildModuleTop
  1479. #define BuildModuleTop $(BUILDLIBTOP)/..
  1480. #endif
  1481. #ifndef LibDir
  1482. # ifdef ProjectRoot
  1483. #  define LibDir Concat(ProjectRoot,/lib/X11)
  1484. # else
  1485. #  define LibDir /usr/lib/X11
  1486. # endif
  1487. #endif
  1488. #ifndef ModuleDir
  1489. #define ModuleDir $(USRLIBDIR)/modules
  1490. #endif
  1491. #ifndef InstSrcDir
  1492. #define InstSrcDir Concat(ProjectRoot,/src)
  1493. #endif
  1494. #ifndef LibexecDir
  1495. #ifdef ProjectRoot
  1496. #define LibexecDir Concat(ProjectRoot,/libexec)
  1497. #else
  1498. #define LibexecDir /usr/X11/libexec
  1499. #endif
  1500. #endif
  1501. #ifndef ConfigDir
  1502. #define ConfigDir $(LIBDIR)/config
  1503. #endif
  1504. #ifndef DocDir
  1505. #define DocDir $(LIBDIR)/doc
  1506. #endif
  1507. #ifndef DocHtmlDir
  1508. #define DocHtmlDir $(DOCDIR)/html
  1509. #endif
  1510. #ifndef DocPsDir
  1511. #define DocPsDir $(DOCDIR)/PostScript
  1512. #endif
  1513. #ifndef DocPdfDir
  1514. #define DocPdfDir $(DOCDIR)/PDF
  1515. #endif
  1516. #ifndef FontDir
  1517. #define FontDir $(LIBDIR)/fonts
  1518. #endif
  1519. #ifndef AdmDir
  1520. #define AdmDir /usr/adm
  1521. #endif
  1522. #ifndef XinitDir
  1523. #define XinitDir $(LIBDIR)/xinit
  1524. #endif
  1525. #ifndef XdmDir
  1526. #define XdmDir $(LIBDIR)/xdm
  1527. #endif
  1528. #ifndef XdmVarDir
  1529. #define XdmVarDir $(VARLIBDIR)/xdm
  1530. #endif
  1531. #ifndef XdmAuthDir
  1532. #define XdmAuthDir $(LIBDIR)/xdm
  1533. #endif
  1534. #ifndef XdmConfigurationSubdirectory        /* under xdm sources */
  1535. #define XdmConfigurationSubdirectory config
  1536. #endif
  1537. #ifndef TwmDir
  1538. #define TwmDir $(LIBDIR)/twm
  1539. #endif
  1540. #ifndef XsmDir
  1541. #define XsmDir $(LIBDIR)/xsm
  1542. #endif
  1543. #ifndef NlsDir
  1544. #define NlsDir $(LIBDIR)/nls
  1545. #endif
  1546. #ifndef XLocaleDir
  1547. #define XLocaleDir $(LIBDIR)/locale
  1548. #endif
  1549. #ifndef LbxproxyDir
  1550. #define LbxproxyDir $(LIBDIR)/lbxproxy
  1551. #endif
  1552. #ifndef LbxproxyConfigSubdir        /* under lbxproxy sources */
  1553. #define LbxproxyConfigSubdir config
  1554. #endif
  1555. #ifndef ProxyManagerDir
  1556. #define ProxyManagerDir $(LIBDIR)/proxymngr
  1557. #endif
  1558. #ifndef ServerConfigDir
  1559. #define ServerConfigDir $(LIBDIR)/xserver
  1560. #endif
  1561. #ifndef XPrintDir
  1562. #define XPrintDir ServerConfigDir
  1563. #endif
  1564. #ifndef EtcX11Directory
  1565. #define EtcX11Directory /etc/X11
  1566. #endif
  1567. #ifndef InstallSecurityConfig
  1568. #define InstallSecurityConfig YES    /* Install sample security policy */
  1569. #endif
  1570. #ifndef XFileSearchPathBase
  1571. /* avoid SCCS keyword */
  1572. #define XFileSearchPathBase Concat4($(LIBDIR)/%L/%T/%N%C,%S:$(LIBDIR)/%l/%T/%N%C,%S:$(LIBDIR)/%T/%N%C,%S:$(LIBDIR)/%L/%T/%N%S:$(LIBDIR)/%l/%T/%N%S:$(LIBDIR)/%T/%N%S)
  1573. #endif
  1574. #ifndef XFileSearchPathDefault
  1575. #ifdef XAppLoadDir
  1576. /* avoid SCCS keyword */
  1577. #define XFileSearchPathDefault XAppLoadDir/Concat(%N%C,%S):XAppLoadDir/%N%S:XFileSearchPathBase
  1578. #else
  1579. #define XFileSearchPathDefault XFileSearchPathBase
  1580. #endif
  1581. #endif
  1582. #ifndef XAppLoadDir
  1583. #define XAppLoadDir $(LIBDIR)/app-defaults
  1584. #endif
  1585. #ifndef XtErrorPrefix
  1586. #define XtErrorPrefix /* as empty string */
  1587. #endif
  1588. #ifndef XtExtraDefines
  1589. #define XtExtraDefines /* as empty string */
  1590. #endif
  1591. #ifndef XtWarningPrefix
  1592. #define XtWarningPrefix /* as empty string */
  1593. #endif
  1594. #ifndef OsNameDefines
  1595. #define OsNameDefines /* as nothing */
  1596. #endif
  1597. #ifndef DefaultUserPath            /* for xdm */
  1598. #define DefaultUserPath :/bin:/usr/bin:$(BINDIR):/usr/ucb
  1599. #endif
  1600. #ifndef DefaultSystemPath        /* for xdm */
  1601. #define DefaultSystemPath /etc:/bin:/usr/bin:$(BINDIR):/usr/ucb
  1602. #endif
  1603. #ifndef DefaultSystemShell        /* for xdm to set in SHELL */
  1604. #define DefaultSystemShell BourneShell
  1605. #endif
  1606. #ifndef ContribDir
  1607. #define ContribDir $(XTOP)/../contrib    /* contrib is outside core tree */
  1608. #endif
  1609. #ifndef UnsupportedDir
  1610. #define UnsupportedDir $(XTOP)/unsupported
  1611. #endif
  1612. #ifndef AllocateLocalDefines
  1613. #define AllocateLocalDefines /**/
  1614. #endif
  1615.  
  1616. #ifndef ForceNormalLib
  1617. #define ForceNormalLib (HasGcc && !HasGcc2)
  1618. #endif
  1619.  
  1620. #ifndef XkbComp
  1621. #define XkbComp xkbcomp
  1622. #endif
  1623.  
  1624. #ifndef PsWrap
  1625. # ifndef UseInstalled
  1626. #  define PsWrap $(PSWRAPSRC)/pswrap
  1627. # else
  1628. #  define PsWrap pswrap
  1629. # endif
  1630. #endif
  1631.  
  1632. #ifndef ResourceConfigurationManagement
  1633. #define ResourceConfigurationManagement YES
  1634. #endif
  1635.  
  1636. #ifndef XtPopdownConformance
  1637. #define XtPopdownConformance YES
  1638. #endif
  1639.  
  1640. XCOMM -----------------------------------------------------------------------
  1641. XCOMM X Window System make variables; these need to be coordinated with rules
  1642.  
  1643. /*
  1644.  * This list must be reflected in the DIRS_TO_BUILD list in the top-level
  1645.  * Makefile.
  1646.  */
  1647.              XTOP = XTop
  1648.            BINDIR = BinDir        /* programs */
  1649.      BUILDINCROOT = BuildIncRoot    /* base of build loc */
  1650.       BUILDINCDIR = BuildIncDir        /* built headers */
  1651.       BUILDINCTOP = BuildIncTop        /* top relative to BUILDINCDIR */
  1652.       BUILDLIBDIR = BuildLibDir        /* built libraries */
  1653.       BUILDLIBTOP = BuildLibTop        /* top relative to BUILDLIBDIR */
  1654.       BUILDBINDIR = BuildBinDir        /* built binaries */
  1655.       BUILDBINTOP = BuildBinTop        /* top relative to BUILDBINDIR */
  1656.    BUILDMODULEDIR = BuildModuleDir    /* built server modules */
  1657.      BUILDI18NDIR = BuildI18NDir    /* built i81n modules */
  1658.    BUILDMODULETOP = BuildModuleTop    /* top relative to BUILDMODULEDIR */
  1659.     XBUILDINCROOT = XBuildIncRoot    /* base of X build loc */
  1660.      XBUILDINCDIR = XBuildIncDir
  1661.      XBUILDINCTOP = XBuildIncTop
  1662.      XBUILDBINDIR = XBuildBinDir
  1663.            INCDIR = $(INCROOT)        /* header files */
  1664.            ADMDIR = AdmDir        /* server log files */
  1665.            LIBDIR = LibDir        /* rgb, XErrorDB, etc. */
  1666.        LIBEXECDIR = LibexecDir
  1667.         MODULEDIR = ModuleDir
  1668.    TOP_X_INCLUDES = TopXInclude
  1669.           XBINDIR = XBinDir        /* BINDIR for X11ProjectRoot */
  1670.  
  1671.        INSTSRCDIR = InstSrcDir        /* Installed source (kernel modules). */
  1672.  
  1673. #ifdef EtcX11Directory
  1674.         ETCX11DIR = EtcX11Directory
  1675. #endif
  1676. #if UseEtcX11
  1677.           CONFDIR = $(ETCX11DIR)
  1678. #elif HasVarDirectory
  1679.           CONFDIR = $(VARDIR)
  1680. #endif
  1681.            DOCDIR = DocDir
  1682.        DOCHTMLDIR = DocHtmlDir
  1683.          DOCPSDIR = DocPsDir
  1684.         DOCPDFDIR = DocPdfDir
  1685.           FONTDIR = FontDir        /* font directories */
  1686.      ENCODINGSDIR = $(FONTDIR)/encodings /* font encodings directory */
  1687.          XINITDIR = XinitDir        /* xinit config files */
  1688.            XDMDIR = XdmDir        /* xdm config files */
  1689.         XDMVARDIR = XdmVarDir        /* xdm config files */
  1690.            TWMDIR = TwmDir        /* twm config files */
  1691.            XSMDIR = XsmDir        /* xsm config files */
  1692.            NLSDIR = NlsDir        /* nls files */
  1693.        XLOCALEDIR = XLocaleDir        /* locale files */
  1694.       LBXPROXYDIR = LbxproxyDir        /* lbxproxy files */
  1695.   PROXYMANAGERDIR = ProxyManagerDir    /* proxy manager config files */
  1696.         XPRINTDIR = XPrintDir        /* print config file root */
  1697.       XAPPLOADDIR = XAppLoadDir        /* application default resource dir */
  1698.        FONTCFLAGS = FontCompilerFlags
  1699.  
  1700.      INSTAPPFLAGS = $(INSTDATFLAGS)    /* XXX - this should go away - XXX */
  1701.  
  1702. #if UseInstalledX11
  1703.               RGB = $(XBINDIR)/rgb
  1704.             FONTC = $(XBINDIR)/bdftopcf
  1705.       MKFONTSCALE = $(XBINDIR)/mkfontscale
  1706.         MKFONTDIR = $(XBINDIR)/mkfontdir
  1707.       MKHTMLINDEX = $(XBINDIR)/mkhtmlindex
  1708.           UCS2ANY = $(XBINDIR)/ProgramTargetName(ucs2any)
  1709.       BDFTRUNCATE = $(XBINDIR)/bdftruncate
  1710.      UCSMAPPREFIX = $(FONTDIR)/util/map-
  1711.        XCURSORGEN = $(XBINDIR)/xcursorgen
  1712. #else
  1713.               RGB = $(CLIENTENVSETUP) $(XBUILDBINDIR)/rgb
  1714. # if !CrossCompiling
  1715.             FONTC = $(CLIENTENVSETUP) $(PRELOADFONTSETUP) $(XBUILDBINDIR)/bdftopcf
  1716.       MKFONTSCALE = $(CLIENTENVSETUP) $(PRELOADFREETYPESETUP) $(XBUILDBINDIR)/mkfontscale
  1717.         MKFONTDIR = $(MKFONTSCALE) -b -s -l
  1718.        XCURSORGEN = $(CLIENTENVSETUP) $(PRELOADSETUP) $(XBUILDBINDIR)/xcursorgen
  1719.           UCS2ANY = $(XBUILDBINDIR)/ProgramTargetName(ucs2any)
  1720. # elif UseInstalledOnCrossCompile
  1721.         MKFONTDIR = $(XBINDIR)/mkfontdir
  1722.       MKFONTSCALE = $(XBINDIR)/mkfontscale
  1723.             FONTC = $(XBINDIR)/bdftopcf
  1724.        XCURSORGEN = $(XBINDIR)/xcursorgen
  1725.           UCS2ANY = $(XBINDIR)/ucs2any
  1726. # endif
  1727. # if HasPerl
  1728.       MKHTMLINDEX = RunPerlScript($(CONFIGSRC)/util/mkhtmlindex.pl,)
  1729. # else
  1730.       MKHTMLINDEX = $(SHELL) $(CONFIGSRC)/util/mkhtmlindex.sh
  1731. # endif
  1732.       BDFTRUNCATE = $(FONTSRC)/util/bdftruncate.pl
  1733.      UCSMAPPREFIX = $(FONTSRC)/util/map-
  1734. #endif
  1735.  
  1736.      HTMLINDEXCMD = HtmlIndexCmd
  1737.  
  1738.        DOCUTILSRC = $(XTOP)/doc/util
  1739.         CLIENTSRC = $(TOP)/clients
  1740.           DEMOSRC = $(TOP)/demos
  1741.        XDOCMACROS = $(DOCUTILSRC)/macros.t
  1742.        XIDXMACROS = $(DOCUTILSRC)/indexmacros.t
  1743.        PROGRAMSRC = $(TOP)/programs
  1744.            LIBSRC = $(XTOP)/lib
  1745.           FONTSRC = $(XTOP)/fonts
  1746.      ENCODINGSSRC = $(FONTSRC)/encodings
  1747.        INCLUDESRC = BuildIncDir
  1748.       XINCLUDESRC = $(INCLUDESRC)/X11
  1749.         SERVERSRC = $(XTOP)/programs/Xserver
  1750.        CONTRIBSRC = ContribDir
  1751.    UNSUPPORTEDSRC = UnsupportedDir
  1752.            DOCSRC = $(XTOP)/doc
  1753.            RGBSRC = $(XTOP)/programs/rgb
  1754.       BDFTOPCFSRC = $(PROGRAMSRC)/bdftopcf
  1755.      MKFONTDIRSRC = $(PROGRAMSRC)/mkfontdir
  1756.     FONTSERVERSRC = $(PROGRAMSRC)/xfs
  1757.        FONTINCSRC = $(XTOP)/include/fonts
  1758.         EXTINCSRC = $(XTOP)/include/extensions
  1759.       FTSOURCEDIR = FreeTypeSrcDir
  1760.         DRMSRCDIR = DRMSrcDir
  1761.        MESASRCDIR = MesaSrcDir
  1762.   OGLSAMPLESRCDIR = OglSampleSrcDir
  1763.         PSWRAPSRC = $(XTOP)/config/pswrap
  1764.      TRANSCOMMSRC = $(LIBSRC)/xtrans
  1765.    TRANS_INCLUDES = -I$(TRANSCOMMSRC)
  1766.  CONNECTION_FLAGS = ConnectionFlags ExtraConnectionDefs
  1767. XTRANS_FAILDEFINES = XtransFailDefine 
  1768. #ifdef X11ProjectRoot
  1769.      XPROJECTROOT = X11ProjectRoot
  1770. #endif
  1771.     VENDORMANNAME = XVendorManNameString
  1772.  VENDORMANVERSION = XVendorManVersionString
  1773.       XORGMANDEFS = XOrgManDefs
  1774.     VENDORMANDEFS = VendorManDefs
  1775.        VENDORNAME = XVendorNameString
  1776.   VENDORNAMESHORT = XVendorNameStringShort
  1777.  
  1778. #if defined (XVendorWebSupport)
  1779.  VENDORWEBSUPPORT = XVendorWebSupport
  1780. #endif
  1781. VENDORSUPPORTDEFS = VendorSupportDefines
  1782.  
  1783.       XKBDEFRULES = XkbDefaultRulesFile
  1784.   XKBDEFRULESDEFS = XkbDefRulesDefines
  1785.   
  1786.      XCONFIGFILE = XConfigFile
  1787.       XCONFIGDIR = XConfigDir
  1788.         XLOGFILE = XLogFile
  1789.      XSERVERNAME = XServerName
  1790.  
  1791. #if HasSharedLibraries
  1792. #ifndef DontUseLibPathVar
  1793. #ifndef BuildLibPathVar
  1794. #define BuildLibPathVar LD_LIBRARY_PATH
  1795. #endif
  1796. #endif
  1797. #endif
  1798. #ifdef BuildLibPathVar
  1799. # ifdef SystemBuildLibPath
  1800.   SYSTEMENVLIBDIR = SystemBuildLibPath
  1801. # endif
  1802. #define XlocaleClientSetup Concat3(XLOCALEDIR,=,BuildI18NDir)
  1803.        XENVLIBDIR = X11BuildLibPath
  1804.    CLIENTENVSETUP = Concat3(BuildLibPathVar,=,BuildLibPath) XlocaleClientSetup
  1805. #else
  1806.    CLIENTENVSETUP =
  1807. #endif
  1808.  
  1809. #ifdef PreloadSetup
  1810.      PRELOADSETUP = PreloadSetup
  1811. #endif
  1812. #ifdef PreloadFontSetup
  1813.  PRELOADFONTSETUP = PreloadFontSetup
  1814. #endif
  1815. #ifdef PreloadFreetypeSetup
  1816.  PRELOADFREETYPESETUP = PreloadFreetypeSetup
  1817. #endif
  1818. #ifdef PreloadXFTSetup
  1819.      PRELOADXFTSETUP = PreloadXFTSetup
  1820. #endif
  1821.  
  1822. #ifndef ShLibIncludeFile
  1823. /* need this to make ANSI-style preprocessors happy */
  1824. #define ShLibIncludeFile <noop.rules>
  1825. #endif
  1826.  
  1827. #include ShLibIncludeFile
  1828.  
  1829. #ifndef XBuildLibDir
  1830. # define XBuildLibDir    BuildLibDir
  1831. #endif
  1832.  
  1833. #ifndef NeedLibInsideFlag
  1834. #define NeedLibInsideFlag    NO
  1835. #endif
  1836.  
  1837. #ifndef SharedLibX11
  1838. #define SharedLibX11 HasSharedLibraries
  1839. #endif
  1840. #ifndef NormalLibX11
  1841. #define NormalLibX11 (!SharedLibX11 | ForceNormalLib)
  1842. #endif
  1843. #ifndef DebugLibX11
  1844. #define DebugLibX11        NO    /* debugged X library */
  1845. #endif
  1846. #ifndef ProfileLibX11
  1847. #define ProfileLibX11        NO    /* profiled X library */
  1848. #endif
  1849.           XLIBSRC = $(LIBSRC)/X11
  1850. #if SharedLibX11
  1851. #ifndef SharedX11Rev
  1852. #define SharedX11Rev 6.2
  1853. #endif
  1854. SharedLibReferences(XONLY,X11,$(XLIBSRC),SOXLIBREV,SharedX11Rev)
  1855. #else
  1856. ProjectUnsharedLibReferences(XONLY,X11,$(XLIBSRC),XBuildLibDir)
  1857. #endif
  1858.       /* Common alternate spellings */
  1859.       DEPXLIBONLY = $(DEPXONLYLIB)
  1860.          XLIBONLY = $(XONLYLIB)
  1861.      LINTXONLYLIB = $(LINTXONLY)
  1862.  
  1863. #if BuildScreenSaverLibrary
  1864. #ifndef SharedLibXss
  1865. #define SharedLibXss    HasSharedLibraries
  1866. #endif
  1867. #ifndef NormalLibXss
  1868. #define NormalLibXss    (!SharedLibXss || ForceNormalLib)
  1869. #endif
  1870. #ifndef DebugLibXss
  1871. #define DebugLibXss    NO
  1872. #endif
  1873. #ifndef ProfileLibXss
  1874. #define ProfileLibXss    NO
  1875. #endif
  1876. #else
  1877. #undef  SharedLibXss
  1878. #define SharedLibXss    NO
  1879. #undef  NormalLibXss
  1880. #define NormalLibXss    NO
  1881. #undef  DebugLibXss
  1882. #define DebugLibXss    NO
  1883. #undef  ProfileLibXss
  1884. #define ProfileLibXss    NO
  1885. #endif
  1886.  
  1887. #if BuildXF86MiscLibrary
  1888. #ifndef SharedLibXxf86misc
  1889. #define SharedLibXxf86misc    HasSharedLibraries
  1890. #endif
  1891. #ifndef NormalLibXxf86misc
  1892. #define NormalLibXxf86misc    (!SharedLibXxf86misc || ForceNormalLib)
  1893. #endif
  1894. #ifndef DebugLibXxf86misc
  1895. #define DebugLibXxf86misc    NO
  1896. #endif
  1897. #ifndef ProfileLibXxf86misc
  1898. #define ProfileLibXxf86misc    NO
  1899. #endif
  1900. #else
  1901. #undef  SharedLibXxf86misc
  1902. #define SharedLibXxf86misc    NO
  1903. #undef  NormalLibXxf86misc
  1904. #define NormalLibXxf86misc    NO
  1905. #undef  DebugLibXxf86misc
  1906. #define DebugLibXxf86misc    NO
  1907. #undef  ProfileLibXxf86misc
  1908. #define ProfileLibXxf86misc    NO
  1909. #endif
  1910.  
  1911. #if BuildXF86VidModeLibrary
  1912. #ifndef SharedLibXxf86vm
  1913. #define SharedLibXxf86vm    HasSharedLibraries
  1914. #endif
  1915. #ifndef NormalLibXxf86vm
  1916. #define NormalLibXxf86vm    (!SharedLibXxf86vm || ForceNormalLib)
  1917. #endif
  1918. #ifndef DebugLibXxf86vm
  1919. #define DebugLibXxf86vm        NO
  1920. #endif
  1921. #ifndef ProfileLibXxf86vm
  1922. #define ProfileLibXxf86vm    NO
  1923. #endif
  1924. #else
  1925. #undef  SharedLibXxf86vm
  1926. #define SharedLibXxf86vm    NO
  1927. #undef  NormalLibXxf86vm
  1928. #define NormalLibXxf86vm    NO
  1929. #undef  DebugLibXxf86vm
  1930. #define DebugLibXxf86vm        NO
  1931. #undef  ProfileLibXxf86vm
  1932. #define ProfileLibXxf86vm    NO
  1933. #endif
  1934.  
  1935. #if BuildXF86DGALibrary
  1936. #ifndef SharedLibXxf86dga
  1937. #define SharedLibXxf86dga    HasSharedLibraries
  1938. #endif
  1939. #ifndef NormalLibXxf86dga
  1940. #define NormalLibXxf86dga    (!SharedLibXxf86dga || ForceNormalLib)
  1941. #endif
  1942. #ifndef DebugLibXxf86dga
  1943. #define DebugLibXxf86dga    NO
  1944. #endif
  1945. #ifndef ProfileLibXxf86dga
  1946. #define ProfileLibXxf86dga    NO
  1947. #endif
  1948. #else
  1949. #undef  SharedLibXxf86dga
  1950. #define SharedLibXxf86dga    NO
  1951. #undef  NormalLibXxf86dga
  1952. #define NormalLibXxf86dga    NO
  1953. #undef  DebugLibXxf86dga
  1954. #define DebugLibXxf86dga    NO
  1955. #undef  ProfileLibXxf86dga
  1956. #define ProfileLibXxf86dga    NO
  1957. #endif
  1958.  
  1959. #if BuildXF86RushLibrary
  1960. #ifndef SharedLibXxf86rush
  1961. #define SharedLibXxf86rush    HasSharedLibraries
  1962. #endif
  1963. #ifndef NormalLibXxf86rush
  1964. #define NormalLibXxf86rush    (!SharedLibXxf86rush || ForceNormalLib)
  1965. #endif
  1966. #ifndef DebugLibXxf86rush
  1967. #define DebugLibXxf86rush    NO
  1968. #endif
  1969. #ifndef ProfileLibXxf86rush
  1970. #define ProfileLibXxf86rush    NO
  1971. #endif
  1972. #else
  1973. #undef  SharedLibXxf86rush
  1974. #define SharedLibXxf86rush    NO
  1975. #undef  NormalLibXxf86rush
  1976. #define NormalLibXxf86rush    NO
  1977. #undef  DebugLibXxf86rush
  1978. #define DebugLibXxf86rush    NO
  1979. #undef  ProfileLibXxf86rush
  1980. #define ProfileLibXxf86rush    NO
  1981. #endif
  1982.  
  1983. #if BuildXvLibrary
  1984. #ifndef SharedLibXv
  1985. #define SharedLibXv        HasSharedLibraries
  1986. #endif
  1987. #ifndef NormalLibXv
  1988. #define NormalLibXv        (!SharedLibXv || ForceNormalLib)
  1989. #endif
  1990. #ifndef DebugLibXv
  1991. #define DebugLibXv        NO
  1992. #endif
  1993. #ifndef ProfileLibXv
  1994. #define ProfileLibXv        NO
  1995. #endif
  1996. #else
  1997. #undef  SharedLibXv
  1998. #define SharedLibXv        NO
  1999. #undef  NormalLibXv
  2000. #define NormalLibXv        NO
  2001. #undef  DebugLibXv
  2002. #define DebugLibXv        NO
  2003. #undef  ProfileLibXv
  2004. #define ProfileLibXv        NO
  2005. #endif
  2006.  
  2007. #if BuildXvMCLibrary
  2008. #ifndef SharedLibXvMC
  2009. #define SharedLibXvMC        HasSharedLibraries
  2010. #endif
  2011. #ifndef NormalLibXvMC
  2012. #define NormalLibXvMC        (!SharedLibXvMC || ForceNormalLib)
  2013. #endif
  2014. #ifndef DebugLibXvMC
  2015. #define DebugLibXvMC        NO
  2016. #endif
  2017. #ifndef ProfileLibXvMC
  2018. #define ProfileLibXvMC        NO
  2019. #endif
  2020. #else
  2021. #undef  SharedLibXvMC
  2022. #define SharedLibXvMC        NO
  2023. #undef  NormalLibXvMC
  2024. #define NormalLibXvMC        NO
  2025. #undef  DebugLibXvMC
  2026. #define DebugLibXvMC        NO
  2027. #undef  ProfileLibXvMC
  2028. #define ProfileLibXvMC        NO
  2029. #endif
  2030.  
  2031. #if BuildXineramaLibrary
  2032. #ifndef SharedLibXinerama
  2033. #define SharedLibXinerama    HasSharedLibraries
  2034. #endif
  2035. #ifndef NormalLibXinerama
  2036. #define NormalLibXinerama    (!SharedLibXinerama || ForceNormalLib)
  2037. #endif
  2038. #ifndef DebugLibXinerama
  2039. #define DebugLibXinerama    NO
  2040. #endif
  2041. #ifndef ProfileLibXinerama
  2042. #define ProfileLibXinerama    NO
  2043. #endif
  2044. #else
  2045. #undef  SharedLibXinerama
  2046. #define SharedLibXinerama    NO
  2047. #undef  NormalLibXinerama
  2048. #define NormalLibXinerama    NO
  2049. #undef  DebugLibXinerama
  2050. #define DebugLibXinerama    NO
  2051. #undef  ProfileLibXinerama
  2052. #define ProfileLibXinerama    NO
  2053. #endif
  2054.  
  2055. #if BuildXResLibrary
  2056. #ifndef SharedLibXRes
  2057. #define SharedLibXRes           HasSharedLibraries
  2058. #endif
  2059. #ifndef NormalLibXRes
  2060. #define NormalLibXRes           (!SharedLibXRes || ForceNormalLib)
  2061. #endif
  2062. #ifndef DebugLibXRes
  2063. #define DebugLibXRes            NO
  2064. #endif
  2065. #ifndef ProfileLibXRes
  2066. #define ProfileLibXRes          NO
  2067. #endif
  2068. #else
  2069. #undef  SharedLibXRes
  2070. #define SharedLibXRes        NO
  2071. #undef  NormalLibXRes
  2072. #define NormalLibXRes        NO
  2073. #undef  DebugLibXRes
  2074. #define DebugLibXRes        NO
  2075. #undef  ProfileLibXRes
  2076. #define ProfileLibXRes        NO
  2077. #endif
  2078.  
  2079. #if BuildDPSLibrary
  2080. #ifndef SharedLibDps
  2081. #define SharedLibDps        HasSharedLibraries
  2082. #endif
  2083. #ifndef NormalLibDps
  2084. #define NormalLibDps        (!SharedLibDps || ForceNormalLib)
  2085. #endif
  2086. #ifndef DebugLibDps
  2087. #define DebugLibDps        NO
  2088. #endif
  2089. #ifndef ProfileLibDps
  2090. #define ProfileLibDps        NO
  2091. #endif
  2092. #else
  2093. #undef  SharedLibDps
  2094. #define SharedLibDps        NO
  2095. #undef  NormalLibDps
  2096. #define NormalLibDps        NO
  2097. #undef  DebugLibDps
  2098. #define DebugLibDps        NO
  2099. #undef  ProfileLibDps
  2100. #define ProfileLibDps        NO
  2101. #endif
  2102.  
  2103. #if BuildDPSTkLibrary
  2104. #ifndef SharedLibDpsTk
  2105. #define SharedLibDpsTk        HasSharedLibraries
  2106. #endif
  2107. #ifndef NormalLibDpsTk
  2108. #define NormalLibDpsTk        (!SharedLibDpsTk || ForceNormalLib)
  2109. #endif
  2110. #ifndef DebugLibDpsTk
  2111. #define DebugLibDpsTk        NO
  2112. #endif
  2113. #ifndef ProfileLibDpsTk
  2114. #define ProfileLibDpsTk        NO
  2115. #endif
  2116. #else
  2117. #undef  SharedLibDpsTk
  2118. #define SharedLibDpsTk        NO
  2119. #undef  NormalLibDpsTk
  2120. #define NormalLibDpsTk        NO
  2121. #undef  DebugLibDpsTk
  2122. #define DebugLibDpsTk        NO
  2123. #undef  ProfileLibDpsTk
  2124. #define ProfileLibDpsTk        NO
  2125. #endif
  2126.  
  2127. #if BuildPSResLibrary
  2128. #ifndef SharedLibPSRes
  2129. #define SharedLibPSRes        HasSharedLibraries
  2130. #endif
  2131. #ifndef NormalLibPSRes
  2132. #define NormalLibPSRes        (!SharedLibPSRes || ForceNormalLib)
  2133. #endif
  2134. #ifndef DebugLibPSRes
  2135. #define DebugLibPSRes        NO
  2136. #endif
  2137. #ifndef ProfileLibPSRes
  2138. #define ProfileLibPSRes        NO
  2139. #endif
  2140. #else
  2141. #undef  SharedLibPSRes
  2142. #define SharedLibPSRes        NO
  2143. #undef  NormalLibPSRes
  2144. #define NormalLibPSRes        NO
  2145. #undef  DebugLibPSRes
  2146. #define DebugLibPSRes        NO
  2147. #undef  ProfileLibPSRes
  2148. #define ProfileLibPSRes        NO
  2149. #endif
  2150.  
  2151. #if BuildRenderLibrary
  2152. #ifndef SharedLibXrender
  2153. #define SharedLibXrender    HasSharedLibraries
  2154. #endif
  2155. #ifndef NormalLibXrender
  2156. #define NormalLibXrender    (!SharedLibXrender || ForceNormalLib)
  2157. #endif
  2158. #ifndef DebugLibXrender
  2159. #define DebugLibXrender        NO
  2160. #endif
  2161. #ifndef ProfileLibXrender
  2162. #define ProfileLibXrender    NO
  2163. #endif
  2164. #else
  2165. #undef  SharedLibXrender
  2166. #define SharedLibXrender    NO
  2167. #undef  NormalLibXrender
  2168. #define NormalLibXrender    NO
  2169. #undef  DebugLibXrender
  2170. #define DebugLibXrender        NO
  2171. #undef  ProfileLibXrender
  2172. #define ProfileLibXrender    NO
  2173. #endif
  2174.  
  2175. #if BuildRandRLibrary
  2176. # ifndef SharedLibXrandr
  2177. #  define SharedLibXrandr        HasSharedLibraries
  2178. # endif
  2179. # ifndef NormalLibXrandr
  2180. #  define NormalLibXrandr        (!SharedLibXrandr || ForceNormalLib)
  2181. # endif
  2182. # ifndef DebugLibXrandr
  2183. #  define DebugLibXrandr    NO
  2184. # endif
  2185. # ifndef ProfileLibXrandr
  2186. #  define ProfileLibXrandr    NO
  2187. # endif
  2188. #else
  2189. # undef  SharedLibXrandr
  2190. # define SharedLibXrandr    NO
  2191. # undef  NormalLibXrandr
  2192. # define NormalLibXrandr    NO
  2193. # undef  DebugLibXrandr
  2194. # define DebugLibXrandr        NO
  2195. # undef  ProfileLibXrandr
  2196. # define ProfileLibXrandr    NO
  2197. #endif
  2198.  
  2199. #if BuildXfixesLibrary
  2200. #ifndef SharedLibXfixes
  2201. #define SharedLibXfixes        HasSharedLibraries
  2202. #endif
  2203. #ifndef NormalLibXfixes
  2204. #define NormalLibXfixes        (!SharedLibXfixes || ForceNormalLib)
  2205. #endif
  2206. #ifndef DebugLibXfixes
  2207. #define DebugLibXfixes        NO
  2208. #endif
  2209. #ifndef ProfileLibXfixes
  2210. #define ProfileLibXfixes    NO
  2211. #endif
  2212. #else
  2213. #undef  SharedLibXfixes
  2214. #define SharedLibXfixes        NO
  2215. #undef  NormalLibXfixes
  2216. #define NormalLibXfixes        NO
  2217. #undef  DebugLibXfixes
  2218. #define DebugLibXfixes        NO
  2219. #undef  ProfileLibXfixes
  2220. #define ProfileLibXfixes    NO
  2221. #endif
  2222.  
  2223. #if BuildDamageLibrary
  2224. #ifndef SharedLibXdamage
  2225. #define SharedLibXdamage    HasSharedLibraries
  2226. #endif
  2227. #ifndef NormalLibXdamage
  2228. #define NormalLibXdamage    (!SharedLibXdamage || ForceNormalLib)
  2229. #endif
  2230. #ifndef DebugLibXdamage
  2231. #define DebugLibXdamage        NO
  2232. #endif
  2233. #ifndef ProfileLibXdamage
  2234. #define ProfileLibXdamage    NO
  2235. #endif
  2236. #else
  2237. #undef  SharedLibXdamage
  2238. #define SharedLibXdamage    NO
  2239. #undef  NormalLibXdamage
  2240. #define NormalLibXdamage    NO
  2241. #undef  DebugLibXdamage
  2242. #define DebugLibXdamage        NO
  2243. #undef  ProfileLibXdamage
  2244. #define ProfileLibXdamage    NO
  2245. #endif
  2246.  
  2247. #if BuildCompositeLibrary
  2248. #ifndef SharedLibXcomposite
  2249. #define SharedLibXcomposite    HasSharedLibraries
  2250. #endif
  2251. #ifndef NormalLibXcomposite
  2252. #define NormalLibXcomposite    (!SharedLibXcomposite || ForceNormalLib)
  2253. #endif
  2254. #ifndef DebugLibXcomposite
  2255. #define DebugLibXcomposite    NO
  2256. #endif
  2257. #ifndef ProfileLibXcomposite
  2258. #define ProfileLibXcomposite    NO
  2259. #endif
  2260. #else
  2261. #undef  SharedLibXcomposite
  2262. #define SharedLibXcomposite    NO
  2263. #undef  NormalLibXcomposite
  2264. #define NormalLibXcomposite    NO
  2265. #undef  DebugLibXcomposite
  2266. #define DebugLibXcomposite    NO
  2267. #undef  ProfileLibXcomposite
  2268. #define ProfileLibXcomposite    NO
  2269. #endif
  2270.  
  2271. #if BuildXevieLibrary
  2272. #ifndef SharedLibXevie
  2273. #define SharedLibXevie        HasSharedLibraries
  2274. #endif
  2275. #ifndef NormalLibXevie
  2276. #define NormalLibXevie        (!SharedLibXevie || ForceNormalLib)
  2277. #endif
  2278. #ifndef DebugLibXevie
  2279. #define DebugLibXevie        NO
  2280. #endif
  2281. #ifndef ProfileLibXevie
  2282. #define ProfileLibXevie        NO
  2283. #endif
  2284. #else
  2285. #undef  SharedLibXevie
  2286. #define SharedLibXevie        NO
  2287. #undef  NormalLibXevie
  2288. #define NormalLibXevie        NO
  2289. #undef  DebugLibXevie
  2290. #define DebugLibXevie        NO
  2291. #undef  ProfileLibXevie
  2292. #define ProfileLibXevie        NO
  2293. #endif
  2294.  
  2295. #if BuildXcursorLibrary
  2296. #ifndef SharedLibXcursor
  2297. #define SharedLibXcursor    HasSharedLibraries
  2298. #endif
  2299. #ifndef NormalLibXcursor
  2300. #define NormalLibXcursor    (!SharedLibXcursor || ForceNormalLib)
  2301. #endif
  2302. #ifndef DebugLibXcursor
  2303. #define DebugLibXcursor        NO
  2304. #endif
  2305. #ifndef ProfileLibXcursor
  2306. #define ProfileLibXcursor    NO
  2307. #endif
  2308. #else
  2309. #undef  SharedLibXcursor
  2310. #define SharedLibXcursor    NO
  2311. #undef  NormalLibXcursor
  2312. #define NormalLibXcursor    NO
  2313. #undef  DebugLibXcursor
  2314. #define DebugLibXcursor        NO
  2315. #undef  ProfileLibXcursor
  2316. #define ProfileLibXcursor    NO
  2317. #endif
  2318.  
  2319. #if BuildAppleWMLibrary
  2320. #ifndef SharedLibAppleWM
  2321. #define SharedLibAppleWM    HasSharedLibraries
  2322. #endif
  2323. #ifndef NormalLibAppleWM
  2324. #define NormalLibAppleWM    (!SharedLibAppleWM || ForceNormalLib)
  2325. #endif
  2326. #ifndef DebugLibAppleWM
  2327. #define DebugLibAppleWM        NO
  2328. #endif
  2329. #ifndef ProfileLibAppleWM
  2330. #define ProfileLibAppleWM    NO
  2331. #endif
  2332. #else
  2333. #undef  SharedLibAppleWM
  2334. #define SharedLibAppleWM    NO
  2335. #undef  NormalLibAppleWM
  2336. #define NormalLibAppleWM    NO
  2337. #undef  DebugLibAppleWM
  2338. #define DebugLibAppleWM        NO
  2339. #undef  ProfileLibAppleWM
  2340. #define ProfileLibAppleWM    NO
  2341. #endif
  2342.  
  2343. #if BuildWindowsWMLibrary
  2344. #ifndef SharedLibWindowsWM
  2345. #define SharedLibWindowsWM    HasSharedLibraries
  2346. #endif
  2347. #ifndef NormalLibWindowsWM
  2348. #define NormalLibWindowsWM    (!SharedLibWindowsWM || ForceNormalLib)
  2349. #endif
  2350. #ifndef DebugLibWindowsWM
  2351. #define DebugLibWindowsWM    NO
  2352. #endif
  2353. #ifndef ProfileLibWindowsWM
  2354. #define ProfileLibWindowsWM    NO
  2355. #endif
  2356. #else
  2357. #undef  SharedLibWindowsWM
  2358. #define SharedLibWindowsWM    NO
  2359. #undef  NormalLibWindowsWM
  2360. #define NormalLibWindowsWM    NO
  2361. #undef  DebugLibWindowsWM
  2362. #define DebugLibWindowsWM    NO
  2363. #undef  ProfileLibWindowsWM
  2364. #define ProfileLibWindowsWM    NO
  2365. #endif
  2366.  
  2367. #if BuildGLULibrary
  2368. #ifndef SharedLibGlu
  2369. #define SharedLibGlu        HasSharedLibraries
  2370. #endif
  2371. #ifndef NormalLibGlu
  2372. #define NormalLibGlu        (!SharedLibX11 | ForceNormalLib)
  2373. #endif
  2374. #ifndef DebugLibGlu
  2375. #define DebugLibGlu        NO
  2376. #endif
  2377. #ifndef ProfileLibGlu
  2378. #define ProfileLibGlu        NO
  2379. #endif
  2380. #else
  2381. #undef  SharedLibGlu
  2382. #define SharedLibGlu        NO
  2383. #undef  NormalLibGlu
  2384. #define NormalLibGlu        NO
  2385. #undef  DebugLibGlu
  2386. #define DebugLibGlu        NO
  2387. #undef  ProfileLibGlu
  2388. #define ProfileLibGlu        NO
  2389. #endif
  2390.  
  2391. #if BuildGLXLibrary
  2392. #ifndef SharedLibGlx
  2393. #define SharedLibGlx        HasSharedLibraries
  2394. #endif
  2395. #ifndef NormalLibGlx
  2396. #define NormalLibGlx        (!SharedLibX11 | ForceNormalLib)
  2397. #endif
  2398. #ifndef DebugLibGlx
  2399. #define DebugLibGlx        NO
  2400. #endif
  2401. #ifndef ProfileLibGlx
  2402. #define ProfileLibGlx        NO
  2403. #endif
  2404. #ifndef BuildLibGlxWithoutPIC
  2405. #define BuildLibGlxWithoutPIC    NO
  2406. #endif
  2407. #if BuildLibGlxWithoutPIC && SharedLibGlx
  2408. #define SharedLibGlxWithoutPIC    YES
  2409. #else
  2410. #define SharedLibGlxWithoutPIC    NO
  2411. #endif
  2412. #ifndef LinkGLToUsrLib
  2413. #define LinkGLToUsrLib        NO
  2414. #endif
  2415. #if NothingOutsideProjectRoot
  2416. #undef LinkGLToUsrLib
  2417. #define LinkGLToUsrLib        NO
  2418. #endif
  2419. #ifndef LinkGLToUsrInclude
  2420. #define LinkGLToUsrInclude    NO
  2421. #endif
  2422. #if NothingOutsideProjectRoot
  2423. #undef LinkGLToUsrInclude
  2424. #define LinkGLToUsrInclude    NO
  2425. #endif
  2426. #else
  2427. #undef  SharedLibGlx
  2428. #define SharedLibGlx        NO
  2429. #undef  NormalLibGlx
  2430. #define NormalLibGlx        NO
  2431. #undef  DebugLibGlx
  2432. #define DebugLibGlx        NO
  2433. #undef  ProfileLibGlx
  2434. #define ProfileLibGlx        NO
  2435. #endif
  2436. /*
  2437.  * Only make a shared GLw library on systems with Weak symbols 
  2438.  * because it depends on Motif. See xc/lib/GLw/README.txt for details
  2439.  */
  2440. #if BuildGLwLibrary
  2441. #ifndef SharedLibGLw
  2442. #define SharedLibGLw        HasSharedLibraries && HasWeakSymbols
  2443. #endif
  2444. #ifndef NormalLibGLw
  2445. #define NormalLibGLw        (!SharedLibGLw || ForceNormalLib)
  2446. #endif
  2447. #ifndef DebugLibGLw
  2448. #define DebugLibGLw        NO    /* debugged widget library */
  2449. #endif
  2450. #ifndef ProfileLibGLw
  2451. #define ProfileLibGLw        NO    /* profiled widget library */
  2452. #endif
  2453. #ifndef GLwUseXmStubs
  2454.     /* create stub (weak) Motif symbols */
  2455. #define GLwUseXmStubs        SharedLibGLw && HasWeakSymbols
  2456. #endif
  2457. #else
  2458. #undef  SharedLibGLw
  2459. #define SharedLibGLw        NO
  2460. #undef  NormalLibGLw
  2461. #define NormalLibGLw        NO
  2462. #undef  DebugLibGLw
  2463. #define DebugLibGLw        NO
  2464. #undef  ProfileLibGLw
  2465. #define ProfileLibGLw        NO
  2466. #endif
  2467.  
  2468. #ifndef SharedLibXext
  2469. #define SharedLibXext HasSharedLibraries
  2470. #endif
  2471. #ifndef NormalLibXext
  2472. #define NormalLibXext (!SharedLibXext | ForceNormalLib)
  2473. #endif
  2474. #ifndef DebugLibXext
  2475. #define DebugLibXext        NO    /* debugged Xext library */
  2476. #endif
  2477. #ifndef ProfileLibXext
  2478. #define ProfileLibXext        NO    /* profiled Xext library */
  2479. #endif
  2480.       XEXTLIBSRC = $(LIBSRC)/Xext
  2481. #if SharedLibXext
  2482. #ifndef SharedXextRev
  2483. #define SharedXextRev 6.4
  2484. #endif
  2485. SharedLibReferences(EXTENSION,Xext,$(XEXTLIBSRC),SOXEXTREV,SharedXextRev)
  2486. #else
  2487. ProjectUnsharedLibReferences(EXTENSION,Xext,$(XEXTLIBSRC),XBuildLibDir)
  2488. #endif
  2489. LINTEXTENSIONLIB = $(LINTEXTENSION)
  2490.           DEPXLIB = $(DEPEXTENSIONLIB) $(DEPXONLYLIB)
  2491.              XLIB = $(EXTENSIONLIB) $(XONLYLIB)
  2492.          LINTXLIB = $(LINTXONLYLIB)
  2493.  
  2494.     XSSLIBSRC = $(LIBSRC)/Xss
  2495. #if SharedLibXss
  2496. #ifndef SharedXssRev
  2497. #define SharedXssRev 1.0
  2498. #endif
  2499. SharedLibReferences(XSS,Xss,$(XSSLIBSRC),SOXSSREV,SharedXssRev)
  2500. #else
  2501. ProjectUnsharedLibReferences(XSS,Xss,$(XSSLIBSRC),XBuildLibDir)
  2502. #endif
  2503.  
  2504.     XXF86MISCLIBSRC = $(LIBSRC)/Xxf86misc
  2505. #if SharedLibXxf86misc
  2506. #ifndef SharedXxf86miscRev
  2507. #define SharedXxf86miscRev 1.1
  2508. #endif
  2509. SharedLibReferences(XXF86MISC,Xxf86misc,$(XXF86MISCLIBSRC),SOXXF86MISCREV,SharedXxf86miscRev)
  2510. #else
  2511. ProjectUnsharedLibReferences(XXF86MISC,Xxf86misc,$(XXF86MISCLIBSRC),XBuildLibDir)
  2512. #endif
  2513.  
  2514.     XXF86VMLIBSRC = $(LIBSRC)/Xxf86vm
  2515. #if SharedLibXxf86vm
  2516. #ifndef SharedXxf86vmRev
  2517. #define SharedXxf86vmRev 1.0
  2518. #endif
  2519. SharedLibReferences(XXF86VM,Xxf86vm,$(XXF86VMLIBSRC),SOXXF86VMREV,SharedXxf86vmRev)
  2520. #else
  2521. ProjectUnsharedLibReferences(XXF86VM,Xxf86vm,$(XXF86VMLIBSRC),XBuildLibDir)
  2522. #endif
  2523.  
  2524.     XXF86DGALIBSRC = $(LIBSRC)/Xxf86dga
  2525. #if SharedLibXxf86dga
  2526. #ifndef SharedXxf86dgaRev
  2527. #define SharedXxf86dgaRev 1.0
  2528. #endif
  2529. SharedLibReferences(XXF86DGA,Xxf86dga,$(XXF86DGALIBSRC),SOXXF86DGAREV,SharedXxf86dgaRev)
  2530. #else
  2531. ProjectUnsharedLibReferences(XXF86DGA,Xxf86dga,$(XXF86DGALIBSRC),XBuildLibDir)
  2532. #endif
  2533.  
  2534. #if BuildDmxLibrary
  2535. #ifndef SharedLibDmx
  2536. #define SharedLibDmx        NO
  2537. #endif
  2538. #ifndef NormalLibDmx
  2539. #define NormalLibDmx        YES
  2540. #endif
  2541. #ifndef DebugLibDmx
  2542. #define DebugLibDmx        NO
  2543. #endif
  2544. #ifndef ProfileLibDmx
  2545. #define ProfileLibDmx        NO
  2546. #endif
  2547. #else /* BuildDmxLibrary */
  2548. #undef SharedLibDmx
  2549. #define SharedLibDmx        NO
  2550. #undef NormalLibDmx
  2551. #define NormalLibDmx        NO
  2552. #undef DebugLibDmx
  2553. #define DebugLibDmx        NO
  2554. #undef ProfileLibDmx
  2555. #define ProfileLibDmx        NO
  2556. #endif /* BuildDmxLibrary */
  2557.  
  2558.     XXF86RUSHLIBSRC = $(LIBSRC)/Xxf86rush
  2559. #if SharedLibXxf86rush
  2560. #ifndef SharedXxf86rushRev
  2561. #define SharedXxf86rushRev 1.0
  2562. #endif
  2563. SharedLibReferences(XXF86RUSH,Xxf86rush,$(XXF86RUSHLIBSRC),SOXXF86RUSHREV,SharedXxf86rushRev)
  2564. #else
  2565. ProjectUnsharedLibReferences(XXF86RUSH,Xxf86rush,$(XXF86RUSHLIBSRC),XBuildLibDir)
  2566. #endif
  2567.  
  2568.  
  2569.     XVLIBSRC = $(LIBSRC)/Xv
  2570. #if SharedLibXv
  2571. #ifndef SharedXvRev
  2572. #define SharedXvRev 1.0
  2573. #endif
  2574. SharedLibReferences(XV,Xv,$(XVLIBSRC),SOXVREV,SharedXvRev)
  2575. #else
  2576. ProjectUnsharedLibReferences(XV,Xv,$(XVLIBSRC),XBuildLibDir)
  2577. #endif
  2578.  
  2579.  
  2580.     XVMCLIBSRC = $(LIBSRC)/XvMC
  2581. #if SharedLibXvMC
  2582. #ifndef SharedXvMCRev
  2583. #define SharedXvMCRev 1.0
  2584. #endif
  2585. SharedLibReferences(XVMC,XvMC,$(XVMCLIBSRC),SOXVMCREV,SharedXvMCRev)
  2586. #else
  2587. ProjectUnsharedLibReferences(XVMC,XvMC,$(XVMCLIBSRC),XBuildLibDir)
  2588. #endif
  2589.  
  2590.     XINERAMALIBSRC = $(LIBSRC)/Xinerama
  2591. #if SharedLibXinerama
  2592. #ifndef SharedXineramaRev
  2593. #define SharedXineramaRev 1.0
  2594. #endif
  2595. SharedLibReferences(XINERAMA,Xinerama,$(XINERAMALIBSRC),SOXINERAMAREV,SharedXineramaRev)
  2596. #else
  2597. ProjectUnsharedLibReferences(XINERAMA,Xinerama,$(XINERAMALIBSRC),XBuildLibDir)
  2598. #endif
  2599.  
  2600.     XRESLIBSRC = $(LIBSRC)/XRes
  2601. #if SharedLibXRes
  2602. #ifndef SharedXResRev
  2603. #define SharedXResRev 1.0
  2604. #endif
  2605. SharedLibReferences(XRES,XRes,$(XRESLIBSRC),SOXRESREV,SharedXResRev)
  2606. #else
  2607. ProjectUnsharedLibReferences(XRES,XRes,$(XRESLIBSRC),XBuildLibDir)
  2608. #endif
  2609.  
  2610.     DMXLIBSRC = $(LIBSRC)/dmx
  2611. #if SharedLibDmx
  2612. #ifndef SharedDmxRev
  2613. #define SharedDmxRev 1.0
  2614. #endif
  2615. SharedLibReferences(DMX,dmx,$(DMXLIBSRC),SODMXREV,SharedDmxRev)
  2616. #else
  2617. ProjectUnsharedLibReferences(DMX,dmx,$(DMXLIBSRC),XBuildLibDir)
  2618. #endif
  2619.  
  2620.     DPSLIBSRC = $(LIBSRC)/dps
  2621. #if SharedLibDps
  2622. #ifndef SharedDpsRev
  2623. #define SharedDpsRev 1.0
  2624. #endif
  2625. SharedLibReferences(DPS,dps,$(DPSLIBSRC),SODPSREV,SharedDpsRev)
  2626. #else
  2627. ProjectUnsharedLibReferences(DPS,dps,$(DPSLIBSRC),XBuildLibDir)
  2628. #endif
  2629.  
  2630.     DPSTKLIBSRC = $(LIBSRC)/dpstk
  2631. #if SharedLibDpsTk
  2632. #ifndef SharedDpsTkRev
  2633. #define SharedDpsTkRev 1.0
  2634. #endif
  2635. SharedLibReferences(DPSTK,dpstk,$(DPSTKLIBSRC),SODPSTKREV,SharedDpsTkRev)
  2636. #else
  2637. ProjectUnsharedLibReferences(DPSTK,dpstk,$(DPSTKLIBSRC),XBuildLibDir)
  2638. #endif
  2639.  
  2640.     PSRESLIBSRC = $(LIBSRC)/psres
  2641. #if SharedLibPSRes
  2642. #ifndef SharedPSResRev
  2643. #define SharedPSResRev 1.0
  2644. #endif
  2645. SharedLibReferences(PSRES,psres,$(PSRESLIBSRC),SOPSRESREV,SharedPSResRev)
  2646. #else
  2647. ProjectUnsharedLibReferences(PSRES,psres,$(PSRESLIBSRC),XBuildLibDir)
  2648. #endif
  2649.  
  2650.     GLULIBSRC = $(LIBSRC)/GLU
  2651. #if SharedLibGlu
  2652. #ifndef SharedGluRev
  2653. #define SharedGluRev 1.3
  2654. #endif
  2655. SharedLibReferences(GLU,GLU,$(GLULIBSRC),SOGLUREV,SharedGluRev)
  2656. #else
  2657. ProjectUnsharedLibReferences(GLU,GLU,$(GLULIBSRC),XBuildLibDir)
  2658. #endif
  2659.  
  2660.     GLXLIBSRC = $(LIBSRC)/GL
  2661. #if SharedLibGlx
  2662. #ifndef SharedGlxRev
  2663. #define SharedGlxRev 1.2
  2664. #endif
  2665. SharedLibReferences(GLX,GL,$(GLXLIBSRC),SOGLREV,SharedGlxRev)
  2666. #else
  2667. ProjectUnsharedLibReferences(GLX,GL,$(GLXLIBSRC),XBuildLibDir)
  2668. #endif
  2669.     GLWIDGETSRC = $(LIBSRC)/GLw
  2670. #if SharedLibGLw
  2671. #ifndef SharedGLwRev
  2672. #define SharedGLwRev 1.0        /* used to name the shared library */
  2673. #endif
  2674. SharedDSLibReferences(GLW,GLw,$(GLWIDGETSRC),SOGLWREV,SharedGLwRev)
  2675. #else
  2676. ProjectUnsharedLibReferences(GLW,GLw,$(GLWIDGETSRC),XBuildLibDir)
  2677. #endif
  2678.  
  2679.     XRENDERLIBSRC = $(LIBSRC)/Xrender
  2680. #if SharedLibXrender
  2681. #ifndef SharedXrenderRev
  2682. #define SharedXrenderRev 1.2.2
  2683. #endif
  2684. SharedLibReferences(XRENDER,Xrender,$(XRENDERLIBSRC),SOXRENDERREV,SharedXrenderRev)
  2685. #else
  2686. ProjectUnsharedLibReferences(XRENDER,Xrender,$(XRENDERLIBSRC),XBuildLibDir)
  2687. #endif
  2688.  
  2689.     XRANDRLIBSRC = $(LIBSRC)/Xrandr
  2690. #if SharedLibXrandr
  2691. #ifndef SharedXrandrRev
  2692. #define SharedXrandrRev 2.0
  2693. #endif
  2694. SharedLibReferences(XRANDR,Xrandr,$(XRANDRLIBSRC),SOXRANDRREV,SharedXrandrRev)
  2695. #else
  2696. ProjectUnsharedLibReferences(XRANDR,Xrandr,$(XRANDRLIBSRC),XBuildLibDir)
  2697. #endif
  2698.  
  2699.     XFIXESLIBSRC = $(LIBSRC)/Xfixes
  2700. #if SharedLibXfixes
  2701. #ifndef SharedXfixesRev
  2702. #define SharedXfixesRev 3.0
  2703. #endif
  2704. SharedLibReferences(XFIXES,Xfixes,$(XFIXESLIBSRC),SOXFIXESREV,SharedXfixesRev)
  2705. #else
  2706. ProjectUnsharedLibReferences(XFIXES,Xfixes,$(XFIXESLIBSRC),XBuildLibDir)
  2707. #endif
  2708.  
  2709.    XDAMAGELIBSRC = $(LIBSRC)/Xdamage
  2710. #if SharedLibXdamage
  2711. #ifndef SharedXdamageRev
  2712. #define SharedXdamageRev 1.0
  2713. #endif
  2714. SharedLibReferences(XDAMAGE,Xdamage,$(XDAMAGELIBSRC),SOXDAMAGEREV,SharedXdamageRev)
  2715. #else
  2716. ProjectUnsharedLibReferences(XDAMAGE,Xdamage,$(XDAMAGELIBSRC),XBuildLibDir)
  2717. #endif
  2718.  
  2719. XCOMPOSITELIBSRC = $(LIBSRC)/Xcomposite
  2720. #if SharedLibXcomposite
  2721. #ifndef SharedXcompositeRev
  2722. #define SharedXcompositeRev 1.0
  2723. #endif
  2724. SharedLibReferences(XCOMPOSITE,Xcomposite,$(XCOMPOSITELIBSRC),SOXCOMPOSITEREV,SharedXcompositeRev)
  2725. #else
  2726. ProjectUnsharedLibReferences(XCOMPOSITE,Xcomposite,$(XCOMPOSITELIBSRC),XBuildLibDir)
  2727. #endif
  2728.  
  2729. XEVIELIBSRC = $(LIBSRC)/Xevie
  2730. #if SharedLibXevie
  2731. #ifndef SharedXevieRev
  2732. #define SharedXevieRev 1.0
  2733. #endif
  2734. SharedLibReferences(XEVIE,Xevie,$(XEVIELIBSRC),SOXEVIEREV,SharedXevieRev)
  2735. #else
  2736. ProjectUnsharedLibReferences(XEVIE,Xevie,$(XEVIELIBSRC),XBuildLibDir)
  2737. #endif
  2738.  
  2739.    XCURSORLIBSRC = $(LIBSRC)/Xcursor
  2740. #if SharedLibXcursor
  2741. #ifndef SharedXcursorRev
  2742. #define SharedXcursorRev 1.0.2
  2743. #endif
  2744. SharedLibReferences(XCURSOR,Xcursor,$(XCURSORLIBSRC),SOXCURSORREV,SharedXcursorRev)
  2745. #else
  2746. ProjectUnsharedLibReferences(XCURSOR,Xcursor,$(XCURSORLIBSRC),XBuildLibDir)
  2747. #endif
  2748.  
  2749.    APPLEWMLIBSRC = $(LIBSRC)/apple
  2750. #if SharedLibAppleWM
  2751. #ifndef SharedAppleWMRev
  2752. #define SharedAppleWMRev 1.0
  2753. #endif
  2754. SharedLibReferences(APPLEWM,AppleWM,$(APPLEWMLIBSRC),SOAPPLEWMREV,SharedAppleWMRev)
  2755. #else
  2756. ProjectUnsharedLibReferences(APPLEWM,AppleWM,$(APPLEWMLIBSRC),XBuildLibDir)
  2757. #endif
  2758.  
  2759.    WINDOWSWMLIBSRC = $(LIBSRC)/windows
  2760. #if SharedLibWindowsWM
  2761. #ifndef SharedWindowsWMRev
  2762. #define SharedWindowsWMRev 1.0
  2763. #endif
  2764. SharedLibReferences(WINDOWSWM,WindowsWM,$(WINDOWSWMLIBSRC),SOWINDOWSWMREV,SharedWindowsWMRev)
  2765. #else
  2766. ProjectUnsharedLibReferences(WINDOWSWM,WindowsWM,$(WINDOWSWMLIBSRC),XBuildLibDir)
  2767. #endif
  2768.  
  2769. # ifndef SharedLibXfontcache
  2770. #  define SharedLibXfontcache    HasSharedLibraries
  2771. # endif
  2772. # ifndef NormalLibXfontcache
  2773. #  define NormalLibXfontcache    (!SharedLibXfontcache || ForceNormalLib)
  2774. # endif
  2775. # ifndef DebugLibXfontcache
  2776. #  define DebugLibXfontcache    NO
  2777. # endif
  2778. # ifndef ProfileLibXfontcache
  2779. #  define ProfileLibXfontcache    NO
  2780. # endif
  2781.  
  2782.     XFONTCACHELIBSRC = $(LIBSRC)/Xfontcache
  2783. #if SharedLibXfontcache
  2784. #ifndef SharedXfontcacheRev
  2785. #define SharedXfontcacheRev 1.2
  2786. #endif
  2787. SharedLibReferences(XFONTCACHE,Xfontcache,$(XFONTCACHELIBSRC),SOXFONTCACHEREV,SharedXfontcacheRev)
  2788. #else
  2789. ProjectUnsharedLibReferences(XFONTCACHE,Xfontcache,$(XFONTCACHELIBSRC),XBuildLibDir)
  2790. #endif
  2791.  
  2792. #ifndef SharedLibXau
  2793. #define SharedLibXau        NO
  2794. #endif
  2795. #ifndef NormalLibXau
  2796. #define NormalLibXau (!SharedLibXau | ForceNormalLib)
  2797. #endif
  2798. #ifndef DebugLibXau
  2799. #define DebugLibXau        NO    /* debugged auth library */
  2800. #endif
  2801. #ifndef ProfileLibXau
  2802. #define ProfileLibXau        NO    /* profiled auth library */
  2803. #endif
  2804.          XAUTHSRC = $(LIBSRC)/Xau
  2805. #if SharedLibXau
  2806. #ifndef SharedXauRev
  2807. #define SharedXauRev 6.0
  2808. #endif
  2809. SharedLibReferences(XAUTH,Xau,$(XAUTHSRC),SOXAUTHREV,SharedXauRev)
  2810. #else
  2811. #if !UseInstalledXauLib
  2812. ProjectUnsharedLibReferences(XAUTH,Xau,$(XAUTHSRC),XBuildLibDir)
  2813. #else
  2814. ProjectUnsharedLibReferences(XAUTH,Xau,$(XAUTHSRC),$(USRLIBDIR))
  2815. #endif
  2816. #endif
  2817.  
  2818. #ifndef SharedLibXdmcp
  2819. #define SharedLibXdmcp        NO
  2820. #endif
  2821. #ifndef NormalLibXdmcp
  2822. #define NormalLibXdmcp (!SharedLibXdmcp | ForceNormalLib)
  2823. #endif
  2824. #ifndef DebugLibXdmcp
  2825. #define DebugLibXdmcp        NO    /* debugged XDMCP library */
  2826. #endif
  2827. #ifndef ProfileLibXdmcp
  2828. #define ProfileLibXdmcp        NO    /* profiled XDMCP library */
  2829. #endif
  2830.       XDMCPLIBSRC = $(LIBSRC)/Xdmcp
  2831. #if SharedLibXdmcp
  2832. #ifndef SharedXdmcpRev
  2833. #define SharedXdmcpRev 6.0
  2834. #endif
  2835. SharedLibReferences(XDMCP,Xdmcp,$(XDMCPLIBSRC),SOXDMCPREV,SharedXdmcpRev)
  2836. #else
  2837. #if !UseInstalledXdmcpLib
  2838. ProjectUnsharedLibReferences(XDMCP,Xdmcp,$(XDMCPLIBSRC),XBuildLibDir)
  2839. #else
  2840. ProjectUnsharedLibReferences(XDMCP,Xdmcp,$(XDMCPLIBSRC),$(USRLIBDIR))
  2841. #endif
  2842. #endif
  2843.  
  2844. #ifndef SharedLibXmu
  2845. #define SharedLibXmu HasSharedLibraries
  2846. #endif
  2847. #ifndef NormalLibXmu
  2848. #define NormalLibXmu (!SharedLibXmu | ForceNormalLib)
  2849. #endif
  2850. #ifndef DebugLibXmu
  2851. #define DebugLibXmu        NO    /* debugged Xmu library */
  2852. #endif
  2853. #ifndef ProfileLibXmu
  2854. #define ProfileLibXmu        NO    /* profiled Xmu library */
  2855. #endif
  2856.            XMUSRC = $(LIBSRC)/Xmu
  2857. #if SharedLibXmu
  2858. #ifndef SharedXmuRev
  2859. #define SharedXmuRev 6.2
  2860. #endif
  2861. SharedDSLibReferences(XMU,Xmu,$(XMUSRC),SOXMUREV,SharedXmuRev)
  2862. #else
  2863. ProjectUnsharedLibReferences(XMU,Xmu,$(XMUSRC),XBuildLibDir)
  2864. #endif
  2865.  
  2866. #ifndef SharedLibXmuu
  2867. #define SharedLibXmuu HasSharedLibraries
  2868. #endif
  2869. #ifndef NormalLibXmuu
  2870. #define NormalLibXmuu        (!SharedLibXmuu | ForceNormalLib)
  2871. #endif
  2872. #ifndef DebugLibXmuu
  2873. #define DebugLibXmuu        NO    /* debugged Xmuu library */
  2874. #endif
  2875. #ifndef ProfileLibXmuu
  2876. #define ProfileLibXmuu        NO    /* profiled Xmuu library */
  2877. #endif
  2878.            XMUUSRC = $(LIBSRC)/Xmuu
  2879. #if SharedLibXmuu
  2880. #ifndef SharedXmuuRev
  2881. #define SharedXmuuRev 1.0
  2882. #endif
  2883. SharedLibReferences(XMUU,Xmuu,$(XMUUSRC),SOXMUUREV,SharedXmuuRev)
  2884. #else
  2885. ProjectUnsharedLibReferences(XMUU,Xmuu,$(XMUUSRC),XBuildLibDir)
  2886. #endif
  2887.  
  2888. #ifndef SharedOldX
  2889. #define SharedOldX HasSharedLibraries
  2890. #endif
  2891. #ifndef NormalOldX
  2892. #define NormalOldX (!SharedOldX | ForceNormalLib)
  2893. #endif
  2894. #ifndef DebugOldX
  2895. #define DebugOldX        NO    /* debugged old X library */
  2896. #endif
  2897. #ifndef ProfileOldX
  2898. #define ProfileOldX        NO    /* profiled old X library */
  2899. #endif
  2900.        OLDXLIBSRC = $(LIBSRC)/oldX
  2901. #if SharedOldX
  2902. #ifndef SharedOldXRev
  2903. #define SharedOldXRev 6.0
  2904. #endif
  2905. SharedLibReferences(OLDX,oldX,$(OLDXLIBSRC),SOOLDXREV,SharedOldXRev)
  2906. #else
  2907. ProjectUnsharedLibReferences(OLDX,oldX,$(OLDXLIBSRC),XBuildLibDir)
  2908. #endif
  2909.  
  2910. #ifndef SharedLibXp
  2911. #define SharedLibXp HasSharedLibraries
  2912. #endif
  2913. #ifndef NormalLibXp
  2914. #define NormalLibXp (!SharedLibXp | ForceNormalLib)
  2915. #endif
  2916. #ifndef DebugLibXp
  2917. #define DebugLibXp              NO      /* debugged Xp library */
  2918. #endif
  2919. #ifndef ProfileLibXp
  2920. #define ProfileLibXp            NO      /* profiled Xp library */
  2921. #endif
  2922.          XPLIBSRC = $(LIBSRC)/Xp
  2923. #if SharedLibXp
  2924. #ifndef SharedXpRev
  2925. #define SharedXpRev 6.2
  2926. #endif
  2927. SharedLibReferences(XP,Xp,$(XPLIBSRC),SOXPREV,SharedXpRev)
  2928. #else
  2929. ProjectUnsharedLibReferences(XP,Xp,$(XPLIBSRC),XBuildLibDir)
  2930. #endif
  2931.  
  2932. #ifndef SharedLibXt
  2933. #define SharedLibXt HasSharedLibraries
  2934. #endif
  2935. #ifndef NormalLibXt
  2936. #define NormalLibXt (!SharedLibXt | ForceNormalLib)
  2937. #endif
  2938. #ifndef DebugLibXt
  2939. #define DebugLibXt        NO    /* debugged toolkit library */
  2940. #endif
  2941. #ifndef ProfileLibXt
  2942. #define ProfileLibXt        NO    /* profiled toolkit library */
  2943. #endif
  2944.        TOOLKITSRC = $(LIBSRC)/Xt
  2945. #if SharedLibXt
  2946. #ifndef SharedXtRev
  2947. #define SharedXtRev 6.0
  2948. #endif
  2949. SharedDSLibReferences(XTOOLONLY,Xt,$(TOOLKITSRC),SOXTREV,SharedXtRev)
  2950. #else
  2951. ProjectUnsharedLibReferences(XTOOLONLY,Xt,$(TOOLKITSRC),XBuildLibDir)
  2952. #endif
  2953.       DEPXTOOLLIB = $(DEPXTOOLONLYLIB) $(DEPSMLIB) $(DEPICELIB)
  2954.          XTOOLLIB = $(XTOOLONLYLIB) $(SMLIB) $(ICELIB)
  2955.      LINTXTOOLLIB = $(LINTXTOOLONLYLIB)
  2956.  
  2957. #ifndef SharedLibXa
  2958. #define SharedLibXa    (HasSharedLibraries & HasCplusplus)
  2959. #endif
  2960. #ifndef NormalLibXa
  2961. /* #define NormalLibXa    ((!SharedLibXa | ForceNormalLib) & HasCplusplus) */
  2962. #define NormalLibXa    YES /* needed for current tests, will correct later */
  2963. #endif
  2964. #ifndef DebugLibXa
  2965. #define DebugLibXa    NO    /* debugged audio library */
  2966. #endif
  2967. #ifndef ProfileLibXa
  2968. #define ProfileLibXa    NO    /* profiled audio library */
  2969. #endif
  2970.        XALIBSRC = $(LIBSRC)/Xa
  2971. #if SharedLibXa
  2972. #ifndef SharedXaRev
  2973. #define SharedXaRev 1.0
  2974. #endif
  2975. SharedLibReferences(XA,Xa,$(XALIBSRC),SOXAREV,SharedXaRev)
  2976. #else
  2977. UnsharedLibReferences(XA,Xa,$(XALIBSRC))
  2978. #endif
  2979.  
  2980. #ifndef BuildXaw
  2981. #define BuildXaw (BuildXprintLib && !BuildServersOnly)
  2982. #endif
  2983.  
  2984.        /* AWIDGETSRC is needed by libXaw6 and libXaw7 */
  2985.        AWIDGETSRC = $(LIBSRC)/Xaw
  2986.  
  2987. #if BuildXaw
  2988. #ifndef SharedLibXaw
  2989. #define SharedLibXaw HasSharedLibraries
  2990. #endif
  2991. #ifndef NormalLibXaw
  2992. #define NormalLibXaw (!SharedLibXaw | ForceNormalLib)
  2993. #endif
  2994. #ifndef DebugLibXaw
  2995. #define DebugLibXaw        NO    /* debugged widget library */
  2996. #endif
  2997. #ifndef ProfileLibXaw
  2998. #define ProfileLibXaw        NO    /* profiled widget library */
  2999. #endif
  3000. #if SharedLibXaw
  3001. #ifndef SharedXawRev
  3002. #define SharedXawRev 8.0
  3003. #endif
  3004. SharedDSLibReferences(XAW,Xaw,$(AWIDGETSRC),SOXAWREV,SharedXawRev)
  3005. #else
  3006. ProjectUnsharedLibReferences(XAW,Xaw,$(AWIDGETSRC),XBuildLibDir)
  3007. #endif
  3008. #endif
  3009.  
  3010. #ifndef BuildXaw7
  3011. #define BuildXaw7 (HasSharedLibraries && !BuildServersOnly)
  3012. #endif
  3013.  
  3014. #if BuildXaw7
  3015. #ifndef SharedLibXaw7
  3016. #define SharedLibXaw7 HasSharedLibraries
  3017. #endif
  3018. #ifndef NormalLibXaw7
  3019. #define NormalLibXaw7        NO
  3020. #endif
  3021. #ifndef DebugLibXaw7
  3022. #define DebugLibXaw7        NO    /* debugged widget library */
  3023. #endif
  3024. #ifndef ProfileLibXaw7
  3025. #define ProfileLibXaw7        NO    /* profiled widget library */
  3026. #endif
  3027.        AWIDGET7SRC = $(LIBSRC)/Xaw7
  3028. #if SharedLibXaw7
  3029. #ifndef SharedXaw7Rev
  3030. #define SharedXaw7Rev 7.0
  3031. #endif
  3032. SharedDSLibReferences(XAW7,Xaw,$(AWIDGET7SRC),SOXAW7REV,SharedXaw7Rev)
  3033. #if !BuildXaw
  3034. SharedDSLibReferences(XAW,Xaw,$(AWIDGET7SRC),SOXAWREV,SharedXawRev)
  3035. #endif
  3036. #else
  3037. ProjectUnsharedLibReferences(XAW7,Xaw,$(AWIDGET7SRC),XBuildLibDir)
  3038. #if !BuildXaw
  3039. ProjectUnsharedLibReferences(XAW,Xaw,$(AWIDGET7SRC),XBuildLibDir)
  3040. #endif
  3041. #endif
  3042. #endif
  3043.  
  3044.  
  3045. #ifndef BuildXaw6
  3046. #define BuildXaw6 (HasSharedLibraries && !BuildServersOnly)
  3047. #endif
  3048.  
  3049. #if BuildXaw6
  3050. #ifndef SharedLibXaw6
  3051. #define SharedLibXaw6 HasSharedLibraries
  3052. #endif
  3053. #ifndef NormalLibXaw6
  3054. #define NormalLibXaw6        NO
  3055. #endif
  3056. #ifndef DebugLibXaw6
  3057. #define DebugLibXaw6        NO    /* debugged widget library */
  3058. #endif
  3059. #ifndef ProfileLibXaw6
  3060. #define ProfileLibXaw6        NO    /* profiled widget library */
  3061. #endif
  3062.        AWIDGET6SRC = $(LIBSRC)/Xaw6
  3063. #if SharedLibXaw6
  3064. #ifndef SharedXaw6Rev
  3065. #define SharedXaw6Rev 6.1
  3066. #endif
  3067. SharedDSLibReferences(XAW6,Xaw,$(AWIDGET6SRC),SOXAW6REV,SharedXaw6Rev)
  3068. #if !BuildXaw && !BuildXaw7
  3069. SharedDSLibReferences(XAW,Xaw,$(AWIDGET6SRC),SOXAWREV,SharedXawRev)
  3070. #endif
  3071. #else
  3072. ProjectUnsharedLibReferences(XAW6,Xaw,$(AWIDGET6SRC),XBuildLibDir)
  3073. #if !BuildXaw && !BuildXaw7
  3074. ProjectUnsharedLibReferences(XAW,Xaw,$(AWIDGET6SRC),XBuildLibDir)
  3075. #endif
  3076. #endif
  3077. #endif
  3078.  
  3079. #ifndef SharedLibXi
  3080. #define SharedLibXi HasSharedLibraries
  3081. #endif
  3082. #ifndef NormalLibXi
  3083. #define NormalLibXi (!SharedLibXi | ForceNormalLib)
  3084. #endif
  3085. #ifndef DebugLibXi
  3086. #define DebugLibXi        NO    /* debugged Xi library */
  3087. #endif
  3088. #ifndef ProfileLibXi
  3089. #define ProfileLibXi        NO    /* profiled Xi library */
  3090. #endif
  3091.          XILIBSRC = $(LIBSRC)/Xi
  3092. #if SharedLibXi
  3093. #ifndef SharedXiRev
  3094. #define SharedXiRev 6.0
  3095. #endif
  3096. SharedLibReferences(XI,Xi,$(XILIBSRC),SOXINPUTREV,SharedXiRev)
  3097. #else
  3098. ProjectUnsharedLibReferences(XI,Xi,$(XILIBSRC),XBuildLibDir)
  3099. #endif
  3100.  
  3101. #ifndef SharedLibXtst
  3102. #define SharedLibXtst HasSharedLibraries
  3103. #endif
  3104. #ifndef NormalLibXtst
  3105. #define NormalLibXtst (!SharedLibXtst | ForceNormalLib)
  3106. #endif
  3107. #ifndef DebugLibXtst
  3108. #define DebugLibXtst        NO    /* debugged Xtst library */
  3109. #endif
  3110. #ifndef ProfileLibXtst
  3111. #define ProfileLibXtst        NO    /* profiled Xtst library */
  3112. #endif
  3113.       XTESTLIBSRC = $(LIBSRC)/Xtst
  3114. #if SharedLibXtst
  3115. #ifndef SharedXtstRev
  3116. #define SharedXtstRev 6.1
  3117. #endif
  3118. SharedLibReferences(XTEST,Xtst,$(XTESTLIBSRC),SOXTESTREV,SharedXtstRev)
  3119. #else
  3120. ProjectUnsharedLibReferences(XTEST,Xtst,$(XTESTLIBSRC),XBuildLibDir)
  3121. #endif
  3122.  
  3123. ProjectUnsharedLibReferences(XBSD,Xbsd,$(LIBSRC)/Xbsd,XBuildLibDir)
  3124.  
  3125. #ifndef SharedLibICE
  3126. #define SharedLibICE HasSharedLibraries
  3127. #endif
  3128. #ifndef NormalLibICE
  3129. #define NormalLibICE (!SharedLibICE | ForceNormalLib)
  3130. #endif
  3131. #ifndef DebugLibICE
  3132. #define DebugLibICE        NO    /* debugged ICE library */
  3133. #endif
  3134. #ifndef ProfileLibICE
  3135. #define ProfileLibICE        NO    /* profiled ICE library */
  3136. #endif
  3137.            ICESRC = $(LIBSRC)/ICE
  3138. #if SharedLibICE
  3139. #ifndef SharedICERev
  3140. #define SharedICERev 6.3
  3141. #endif
  3142. SharedLibReferences(ICE,ICE,$(ICESRC),SOICEREV,SharedICERev)
  3143. #else
  3144. ProjectUnsharedLibReferences(ICE,ICE,$(ICESRC),XBuildLibDir)
  3145. #endif
  3146.  
  3147. #ifndef SharedLibSM
  3148. #define SharedLibSM HasSharedLibraries
  3149. #endif
  3150. #ifndef NormalLibSM
  3151. #define NormalLibSM (!SharedLibSM | ForceNormalLib)
  3152. #endif
  3153. #ifndef DebugLibSM
  3154. #define DebugLibSM        NO    /* debugged SM library */
  3155. #endif
  3156. #ifndef ProfileLibSM
  3157. #define ProfileLibSM        NO    /* profiled SM library */
  3158. #endif
  3159.             SMSRC = $(LIBSRC)/SM
  3160. #if SharedLibSM
  3161. #ifndef SharedSMRev
  3162. #define SharedSMRev 6.0
  3163. #endif
  3164. SharedLibReferences(SM,SM,$(SMSRC),SOSMREV,SharedSMRev)
  3165. #else
  3166. ProjectUnsharedLibReferences(SM,SM,$(SMSRC),XBuildLibDir)
  3167. #endif
  3168.  
  3169. #ifndef SharedLibXkey
  3170. #define SharedLibXkey HasSharedLibraries
  3171. #endif
  3172. #ifndef NormalLibXkey
  3173. #define NormalLibXkey (!SharedLibXkey | ForceNormalLib)
  3174. #endif
  3175. #ifndef DebugLibXkey
  3176. #define DebugLibXkey        NO    /* debugged Xkey library */
  3177. #endif
  3178. #ifndef ProfileLibXkey
  3179. #define ProfileLibXkey        NO    /* profiled Xkey library */
  3180. #endif
  3181.            XKEYSRC = $(LIBSRC)/Xkey
  3182. #if SharedLibXkey
  3183. #ifndef SharedXkeyRev
  3184. #define SharedXkeyRev 6.0
  3185. #endif
  3186. SharedLibReferences(XKEY,Xkey,$(XKEYSRC),SOXKEYREV,SharedXkeyRev)
  3187. #else
  3188. ProjectUnsharedLibReferences(XKEY,Xkey,$(XKEYSRC),XBuildLibDir)
  3189. #endif
  3190.  
  3191. #ifndef SharedLibFS
  3192. #define SharedLibFS        HasSharedLibraries
  3193. #endif
  3194. #ifndef NormalLibFS
  3195. #define NormalLibFS (!SharedLibFS | ForceNormalLib)
  3196. #endif
  3197. #ifndef DebugLibFS
  3198. #define DebugLibFS        NO    /* debugged FS library */
  3199. #endif
  3200. #ifndef ProfileLibFS
  3201. #define ProfileLibFS        NO    /* profiled FS library */
  3202. #endif
  3203.          FSLIBSRC = $(LIBSRC)/FS
  3204. #if SharedLibFS
  3205. #ifndef SharedFSRev
  3206. #define SharedFSRev 6.0
  3207. #endif
  3208. SharedLibReferences(FS,FS,$(FSLIBSRC),SOFSREV,SharedFSRev)
  3209. #else
  3210. ProjectUnsharedLibReferences(FS,FS,$(FSLIBSRC),XBuildLibDir)
  3211. #endif
  3212.  
  3213. #ifndef SharedLibFont
  3214. #define SharedLibFont HasSharedLibraries
  3215. #endif
  3216. #ifndef NormalLibFont
  3217. #define NormalLibFont (!SharedLibFont | ForceNormalLib | XserverStaticFontLib)
  3218. #endif
  3219. #ifndef DebugLibFont
  3220. #define DebugLibFont        NO    /* debugged Font library */
  3221. #endif
  3222. #ifndef ProfileLibFont
  3223. #define ProfileLibFont        NO    /* profiled Font library */
  3224. #endif
  3225.          FONTLIBSRC = $(LIBSRC)/font
  3226. #if SharedLibFont
  3227. #ifndef SharedFontRev
  3228. #define SharedFontRev 1.5
  3229. #endif
  3230. SharedFontLibReferences()
  3231. XCOMM SharedLibReferences(XFONT,Xfont,$(FONTLIBSRC),SOFONTREV,SharedFontRev)
  3232. #else
  3233. ProjectUnsharedFontLibReferences()
  3234. XCOMM ProjectUnsharedLibReferences(XFONT,Xfont,$(FONTLIBSRC),XBuildLibDir)
  3235. #endif
  3236.  
  3237.      FONTSTUBLIBSRC = $(FONTLIBSRC)/stubs
  3238. ProjectUnsharedLibReferences(FONTSTUB,fntstubs,$(FONTSUBLIBSRC),XBuildLibDir)
  3239.          DEPFONTLIB = $(DEPXFONTLIB) $(DEPFONTSTUBLIB)
  3240.             FONTLIB = $(XFONTLIB) $(FONTSTUBLIB) $(FREETYPE2LIB)
  3241.  
  3242.  
  3243. #ifndef SharedLibFontEnc
  3244. #define SharedLibFontEnc    HasSharedLibraries
  3245. #endif
  3246. #ifndef NormalLibFontEnc
  3247. #define NormalLibFontEnc (!SharedLibFontEnc | ForceNormalLib)
  3248. #endif
  3249. #ifndef DebugLibFontEnc
  3250. #define DebugLibFontEnc        NO    /* debugged fontenc library */
  3251. #endif
  3252. #ifndef ProfileLibFontEnc
  3253. #define ProfileLibFontEnc    NO    /* profiled fontenc library */
  3254. #endif
  3255.          FONTENCLIBSRC = $(LIBSRC)/fontenc
  3256. #if SharedLibFontEnc
  3257. #ifndef SharedFontEncRev
  3258. #define SharedFontEncRev 1.0
  3259. #endif
  3260. SharedLibReferences(XFONTENC,fontenc,$(FONTENCLIBSRC),SOFONTENCREV,SharedFontEncRev)
  3261. #else
  3262. ProjectUnsharedLibReferences(XFONTENC,fontenc,$(FONTENCLIBSRC),XBuildLibDir)
  3263. #endif
  3264.  
  3265. #ifndef SharedLibXpm
  3266. #define SharedLibXpm HasSharedLibraries
  3267. #endif
  3268. #ifndef NormalLibXpm
  3269. #define NormalLibXpm (!SharedLibXpm | ForceNormalLib)
  3270. #endif
  3271. #ifndef DebugLibXpm
  3272. #define DebugLibXpm        NO
  3273. #endif
  3274. #ifndef ProfileLibXpm
  3275. #define ProfileLibXpm        NO
  3276. #endif
  3277.           XPMLIBSRC = $(LIBSRC)/Xpm
  3278. #if SharedLibXpm
  3279. #ifndef SharedXpmRev
  3280. #define SharedXpmRev 4.11
  3281. #endif
  3282. SharedLibReferences(XPM,Xpm,$(XPMLIBSRC),SOXPMREV,SharedXpmRev)
  3283. #else
  3284. ProjectUnsharedLibReferences(XPM,Xpm,$(XPMLIBSRC),XBuildLibDir)
  3285. #endif
  3286.  
  3287. #if UseFreetype2
  3288.  
  3289. #if BuildFreetype2Library
  3290.  
  3291. #ifndef SharedLibFreetype2
  3292. #define SharedLibFreetype2 HasSharedLibraries
  3293. #endif
  3294. #ifndef NormalLibFreetype2
  3295. #define NormalLibFreetype2 (!SharedLibFreetype2 | ForceNormalLib)
  3296. #endif
  3297. #ifndef DebugLibFreetype2
  3298. #define DebugLibFreetype2        NO
  3299. #endif
  3300. #ifndef ProfileLibFreetype2
  3301. #define ProfileLibFreetype2        NO
  3302. #endif
  3303.           FREETYPE2LIBSRC = $(LIBSRC)/freetype2
  3304.  
  3305. /*
  3306.  * FreeType 2.1.4
  3307.  *
  3308.  * Get the library version information from version_info in
  3309.  * in xc/extras/freetype2/builds/unix/configure.ac.
  3310.  *
  3311.  * current:revision:age = 9:5:3
  3312.  *
  3313.  * The LibtoolMinorVersions revision is "(current - age).age".
  3314.  * The !LibtoolMinorVersions revision is "current.0".
  3315.  * Freetype2Version should be set to "current.revision.age"
  3316.  */
  3317. #ifndef Freetype2Version
  3318. #define Freetype2Version 9.6.3
  3319. #endif
  3320.  
  3321. #if SharedLibFreetype2
  3322. #ifndef SharedLibtoolFreetype2Rev
  3323. #define SharedLibtoolFreetype2Rev    9:6:3
  3324. #endif
  3325. #ifndef SharedFreetype2Rev
  3326. #if LibtoolMinorVersions
  3327. #define SharedFreetype2Rev 6.3.5
  3328. #else
  3329. #define SharedFreetype2Rev 9.0
  3330. #endif
  3331. #endif
  3332. SharedLibReferences(FREETYPE2,freetype,$(FREETYPE2LIBSRC),SOFREETYPE2REV,SharedFreetype2Rev)
  3333. #else
  3334. ProjectUnsharedLibReferences(FREETYPE2,freetype,$(FREETYPE2LIBSRC),XBuildLibDir)
  3335. #endif
  3336.  
  3337. #ifdef UseInstalled
  3338. FREETYPE2INCDIR=$(INCDIR)
  3339. #else
  3340. FREETYPE2INCDIR=$(BUILDINCDIR)
  3341. #endif
  3342.  
  3343. #else /* BuildFreetype2Library */
  3344.  
  3345. #if HasFreetype2
  3346.  
  3347. #ifndef Freetype2Dir
  3348. #define Freetype2Dir /usr
  3349. #ifndef Freetype2DirStandard
  3350. # define Freetype2DirStandard YES
  3351. #endif
  3352. #endif
  3353. #ifndef Freetype2DirStandard
  3354. #define Freetype2DirStandard NO
  3355. #endif
  3356.  
  3357. #ifndef Freetype2LibDir
  3358. #define Freetype2LibDir Freetype2Dir/LibDirName
  3359. # if Freetype2DirStandard
  3360. #  define Freetype2LibDirStandard YES
  3361. # endif
  3362. #endif
  3363. #ifndef Freetype2LibDirStandard
  3364. # define Freetype2LibDirStandard NO
  3365. #endif
  3366.  
  3367. #ifndef Freetype2IncDir
  3368. #define Freetype2IncDir Freetype2Dir/include
  3369. # if Freetype2DirStandard
  3370. #  define Freetype2IncDirStandard YES
  3371. # endif
  3372. #endif
  3373.  
  3374. FREETYPE2DIR = Freetype2Dir
  3375. FREETYPE2LIBDIR = Freetype2LibDir
  3376. FREETYPE2INCDIR = Freetype2IncDir
  3377. #if Freetype2LibDirStandard
  3378. FREETYPE2LIB = -lfreetype
  3379. #else
  3380. FREETYPE2LIB = -L$(FREETYPE2LIBDIR) LinkerRuntimeLibraryPathFlag($(FREETYPE2LIBDIR)) -lfreetype
  3381. #endif
  3382.  
  3383. #endif /* HasFreetype2 */
  3384.  
  3385. #endif /* else BuildFreetype2Library */
  3386.  
  3387. #ifndef Freetype2IncDirStandard
  3388. # define Freetype2IncDirStandard NO
  3389. #endif
  3390.  
  3391. #if BuildFreetype2Library || HasFreetype2
  3392. #if Freetype2IncDirStandard
  3393. FREETYPE2INCLUDES = -I$(FREETYPE2INCDIR)/freetype2 -I$(FREETYPE2INCDIR)/freetype2/config
  3394. #else
  3395. FREETYPE2INCLUDES = -I$(FREETYPE2INCDIR) -I$(FREETYPE2INCDIR)/freetype2 -I$(FREETYPE2INCDIR)/freetype2/config
  3396. #endif
  3397. FREETYPE2DEFINES = -DFREETYPE2
  3398. #endif
  3399.  
  3400. #endif /* UseFreetype2 */
  3401.  
  3402. #if HasMotif
  3403.  
  3404. #ifndef MotifDir
  3405. #define MotifDir /usr/X11R6
  3406. #endif
  3407. #ifndef MotifDirStandard
  3408. #define MotifDirStandard NO
  3409. #endif
  3410.  
  3411. #ifndef MotifLibDir
  3412. # define MotifLibDir MotifDir/LibDirName
  3413. # if MotifDirStandard
  3414. #  define MotifLibDirStandard YES
  3415. # endif
  3416. #endif
  3417. #ifndef MotifLibDirStandard
  3418. # define MotifLibDirStandard NO
  3419. #endif
  3420.  
  3421. #ifndef MotifIncDir
  3422. # define MotifIncDir MotifDir/include
  3423. # if MotifDirStandard
  3424. #  define MotifIncDirStandard YES
  3425. # endif
  3426. #endif
  3427. #ifndef MotifIncDirStandard
  3428. # define MotifIncDirStandard NO
  3429. #endif
  3430.  
  3431. MOTIFDIR = MotifDir
  3432. MOTIFLIBDIR = MotifLibDir
  3433. MOTIFINCDIR = MotifIncDir
  3434.  
  3435. #if MotifLibDirStandard
  3436. MOTIFLIB = -lXm
  3437. #else
  3438. MOTIFLIB = -L$(MOTIFLIBDIR) LinkerRuntimeLibraryPathFlag($(MOTIFLIBDIR)) -lXm
  3439. #endif
  3440.  
  3441. #if MotifIncDirStandard
  3442. MOTIFINCLUDES = 
  3443. #else
  3444. MOTIFINCLUDES = -I$(MOTIFINCDIR)
  3445. #endif
  3446.  
  3447. #endif /* HasMotif */
  3448.  
  3449. #ifndef SharedLibExpat
  3450. #define SharedLibExpat HasSharedLibraries
  3451. #endif
  3452. #ifndef NormalLibExpat
  3453. #define NormalLibExpat (!SharedLibExpat | ForceNormalLib)
  3454. #endif
  3455. #ifndef DebugLibExpat
  3456. #define DebugLibExpat        NO
  3457. #endif
  3458. #ifndef ProfileLibExpat
  3459. #define ProfileLibExpat        NO
  3460. #endif
  3461.           EXPATLIBSRC = $(LIBSRC)/expat
  3462.  
  3463. /*
  3464.  * Expat 1.95.6.
  3465.  *
  3466.  * Get the library version information from LIBCURRENT, LIBREVISION and LIBAGE
  3467.  * in xc/extras/expat/configure.
  3468.  *
  3469.  * LIBCURRENT:LIBREVISION:LIBAGE = 4:0:4
  3470.  *
  3471.  * The LibtoolMinorVersions revision is "(LIBCURRENT - LIBAGE).LIBAGE".
  3472.  * The !LibtoolMinorVersions revision is "LIBCURRENT.0".
  3473.  */
  3474. #ifndef ExpatVersion
  3475. #define ExpatVersion 1.95.6
  3476. #endif
  3477.  
  3478. #if SharedLibExpat
  3479. #ifndef SharedLibtoolExpatRev
  3480. #define SharedLibtoolExpatRev    4:0:4
  3481. #endif
  3482. #ifndef SharedExpatRev
  3483. #if LibtoolMinorVersions
  3484. #define SharedExpatRev 0.4
  3485. #else
  3486. #define SharedExpatRev 4.0
  3487. #endif
  3488. #endif
  3489. SharedLibReferences(EXPAT,expat,$(EXPATLIBSRC),SOEXPATREV,SharedExpatRev)
  3490. #else
  3491. ProjectUnsharedLibReferences(EXPAT,expat,$(EXPATLIBSRC),XBuildLibDir)
  3492. #endif
  3493.  
  3494. #if UseExpat
  3495.  
  3496. #if BuildExpatLibrary
  3497. EXPATINCLUDES=$(TOP_X_INCLUDES)
  3498. EXPATDEFINES=-DEXPAT
  3499. #else    /* BuildExpatLibrary */
  3500.  
  3501. #if HasExpat
  3502.  
  3503. #ifndef ExpatDir
  3504. #define ExpatDir /usr
  3505. #define ExpatDirStandard YES
  3506. #endif
  3507. #ifndef ExpatDirStandard
  3508. #define ExpatDirStandard NO
  3509. #endif
  3510.  
  3511. #ifndef ExpatLibDir
  3512. #define ExpatLibDir ExpatDir/LibDirName
  3513. # if ExpatDirStandard
  3514. #  define ExpatLibDirStandard YES
  3515. # endif
  3516. #endif
  3517. #ifndef ExpatLibDirStandard
  3518. #define ExpatLibDirStandard NO
  3519. #endif
  3520.  
  3521. #ifndef ExpatIncDir
  3522. #define ExpatIncDir ExpatDir/include
  3523. # if ExpatDirStandard
  3524. #  define ExpatIncDirStandard YES
  3525. # endif
  3526. #endif
  3527. #ifndef ExpatIncDirStandard
  3528. #define ExpatIncDirStandard NO
  3529. #endif
  3530.  
  3531. EXPATDIR = ExpatDir
  3532. EXPATLIBDIR = ExpatLibDir
  3533. EXPATINCDIR = ExpatIncDir
  3534. #if ExpatIncDirStandard
  3535. EXPATINCLUDES =
  3536. #else
  3537. EXPATINCLUDES = -I$(EXPATINCDIR)
  3538. #endif
  3539. #if ExpatLibDirStandard
  3540. EXPATLIB = -lexpat
  3541. #else
  3542. EXPATLIB = -L$(EXPATLIBDIR) -lexpat
  3543. #endif
  3544. EXPATDEFINES = -DEXPAT
  3545. #endif /* HasExpat */
  3546.  
  3547. #endif /* else BuildExpatLibrary */
  3548.  
  3549. #define ExpatClientLibs $(EXPATLIB)
  3550. #define ExpatClientDepLibs $(DEPEXPATLIB)
  3551.  
  3552. #endif /* UseExpat */
  3553.  
  3554. #ifndef SharedLibXft1
  3555. #define SharedLibXft1 HasSharedLibraries
  3556. #endif
  3557. #ifndef NormalLibXft1
  3558. #define NormalLibXft1        NO
  3559. #endif
  3560. #ifndef DebugLibXft1
  3561. #define DebugLibXft1        NO
  3562. #endif
  3563. #ifndef ProfileLibXft1
  3564. #define ProfileLibXft1        NO
  3565. #endif
  3566.           XFT1LIBSRC = $(LIBSRC)/Xft1
  3567. #if SharedLibXft1
  3568. #ifndef SharedXft1Rev
  3569. #define SharedXft1Rev 1.1
  3570. #endif
  3571. SharedLibReferences(XFT1,Xft,$(XFT1LIBSRC),SOXFT1REV,SharedXft1Rev)
  3572. #else
  3573. ProjectUnsharedLibReferences(XFT1,Xft,$(XFT1LIBSRC),XBuildLibDir)
  3574. #endif
  3575.  
  3576. #ifndef Xft1ClientDepLibs
  3577. #if UseFreetype2
  3578. #define Xft1ClientDepLibs $(DEPXFT1LIB) $(DEPFREETYPE2LIB) $(DEPXRENDERLIB)
  3579. #else
  3580. #define Xft1ClientDepLibs $(DEPXFT1LIB) $(DEPXRENDERLIB)
  3581. #endif
  3582. #endif
  3583. #ifndef Xft1ClientLibs
  3584. #if UseFreetype2
  3585. #define Xft1ClientLibs $(XFT1LIB) $(FREETYPE2LIB) $(XRENDERLIB)
  3586. #else
  3587. #define Xft1ClientLibs $(XFT1LIB) $(XRENDERLIB)
  3588. #endif
  3589. #endif
  3590.  
  3591. #ifndef SharedLibXft
  3592. #define SharedLibXft HasSharedLibraries
  3593. #endif
  3594. #ifndef NormalLibXft
  3595. #define NormalLibXft (!SharedLibXft | ForceNormalLib)
  3596. #endif
  3597. #ifndef DebugLibXft
  3598. #define DebugLibXft        NO
  3599. #endif
  3600. #ifndef ProfileLibXft
  3601. #define ProfileLibXft        NO
  3602. #endif
  3603.           XFTLIBSRC = $(LIBSRC)/Xft
  3604. #if SharedLibXft
  3605. #ifndef SharedXftRev
  3606. #define SharedXftRev 2.1.2
  3607. #endif
  3608. SharedLibReferences(XFT,Xft,$(XFTLIBSRC),SOXFTREV,SharedXftRev)
  3609. #else
  3610. ProjectUnsharedLibReferences(XFT,Xft,$(XFTLIBSRC),XBuildLibDir)
  3611. #endif
  3612.  
  3613. #ifndef XftClientDepLibs
  3614. #define XftClientDepLibs $(DEPXFTLIB) FontconfigClientDepLibs $(DEPXRENDERLIB)
  3615. #endif
  3616. #ifndef XftClientLibs
  3617. #define XftClientLibs $(XFTLIB) FontconfigClientLibs $(XRENDERLIB)
  3618. #endif
  3619.  
  3620. #if UseFontconfig
  3621.  
  3622. #if BuildFontconfigLibrary
  3623.  
  3624. #ifndef SharedLibFontconfig
  3625. #define SharedLibFontconfig HasSharedLibraries
  3626. #endif
  3627. #ifndef NormalLibFontconfig
  3628. #define NormalLibFontconfig (!SharedLibFontconfig | ForceNormalLib)
  3629. #endif
  3630. #ifndef DebugLibFontconfig
  3631. #define DebugLibFontconfig        NO
  3632. #endif
  3633. #ifndef ProfileLibFontconfig
  3634. #define ProfileLibFontconfig        NO
  3635. #endif
  3636.           FONTCONFIGLIBSRC = $(LIBSRC)/fontconfig
  3637. #if SharedLibFontconfig
  3638. #ifndef SharedFontconfigRev
  3639. #define SharedFontconfigRev 1.0.4
  3640. #endif
  3641. SharedLibReferences(FONTCONFIG,fontconfig,$(FONTCONFIGLIBSRC),SOFONTCONFIGREV,SharedFontconfigRev)
  3642. #else
  3643. ProjectUnsharedLibReferences(FONTCONFIG,fontconfig,$(FONTCONFIGLIBSRC),XBuildLibDir)
  3644. #endif
  3645.  
  3646. #ifdef UseInstalled
  3647. FONTCONFIGINCDIR=$(INCDIR)
  3648. #else
  3649. FONTCONFIGINCDIR=$(BUILDINCDIR)
  3650. #endif
  3651.  
  3652. FONTCONFIGINCLUDES = -I$(FONTCONFIGINCDIR)
  3653.  
  3654. #if UseInstalledX11
  3655. FCCACHE = $(BINDIR)/fc-cache
  3656. #else
  3657. FCCACHE = set -x; $(CLIENTENVSETUP) $(PRELOADXFTSETUP) FONTCONFIG_PATH=$(FONTCONFIGLIBSRC) $(XBUILDBINDIR)/fc-cache
  3658. #endif
  3659.  
  3660. #else /* BuildFontconfigLibrary */
  3661.  
  3662. #if HasFontconfig
  3663.  
  3664. #ifndef FontconfigDir
  3665. # define FontconfigDir /usr
  3666. # ifndef FontconfigDirStandard
  3667. #  define FontconfigDirStandard YES
  3668. # endif
  3669. #endif
  3670.  
  3671. #ifndef FontconfigDirStandard
  3672. # define FontconfigDirStandard NO
  3673. #endif
  3674.  
  3675. #ifndef FontconfigLibDir
  3676. # define FontconfigLibDir FontconfigDir/LibDirName
  3677. # if FontconfigDirStandard
  3678. #  define FontconfigLibDirStandard YES
  3679. # endif
  3680. #endif
  3681. #ifndef FontconfigLibDirStandard
  3682. # define FontconfigLibDirStandard NO
  3683. #endif
  3684.  
  3685. #ifndef FontconfigBinDir
  3686. # define FontconfigBinDir FontconfigDir/bin
  3687. #endif
  3688.  
  3689. #ifndef FontconfigIncDir
  3690. # define FontconfigIncDir FontconfigDir/include
  3691. # if FontconfigDirStandard
  3692. #  define FontconfigIncDirStandard YES
  3693. # endif
  3694. #endif
  3695.  
  3696. #ifndef FontconfigIncDirStandard
  3697. # define FontconfigIncDirStandard NO
  3698. #endif
  3699.  
  3700. FONTCONFIGDIR = FontconfigDir
  3701. FONTCONFIGLIBDIR = FontconfigLibDir
  3702. FONTCONFIGINCDIR = FontconfigIncDir
  3703. FONTCONFIGBINDIR = FontconfigBinDir
  3704. #if FontconfigLibDirStandard
  3705. FONTCONFIGLIB = -lfontconfig
  3706. #else
  3707. FONTCONFIGLIB = -L$(FONTCONFIGLIBDIR) -lfontconfig
  3708. #endif
  3709.  
  3710. #if FontconfigIncDirStandard
  3711. FONTCONFIGINCLUDES =
  3712. #else
  3713. FONTCONFIGINCLUDES = -I$(FONTCONFIGINCDIR)
  3714. #endif
  3715.  
  3716. FCCACHE = $(FONTCONFIGBINDIR)/fc-cache
  3717.  
  3718. #endif /* HasFontconfig */
  3719.  
  3720. #endif /* else BuildFontconfigLibrary */
  3721.  
  3722. #if BuildFontconfigLibrary || HasFontconfig
  3723. FONTCONFIGDEFINES = -DFONTCONFIG
  3724. #endif
  3725.  
  3726. #ifndef FontconfigClientDepLibs
  3727. #define FontconfigClientDepLibs $(DEPFONTCONFIGLIB) $(DEPFREETYPE2LIB) ExpatClientDepLibs
  3728. #endif
  3729. #ifndef FontconfigClientLibs
  3730. #define FontconfigClientLibs $(FONTCONFIGLIB) $(FREETYPE2LIB) ExpatClientLibs
  3731. #endif
  3732.  
  3733. #endif /* UseFontconfig */
  3734.  
  3735. XFTINCLUDES=$(FONTCONFIGINCLUDES) $(FREETYPE2INCLUDES)
  3736.  
  3737. #ifdef HasLibpng
  3738.  
  3739. /*
  3740.  * Libpng controls:
  3741.  *
  3742.  *    LibpngDir        prefix for all libpng files
  3743.  *    LibpngDirStandard    Boolean - whether png headers/libs are
  3744.  *                in default compile/link paths
  3745.  *    LibpngLibDir        Directory holding png library
  3746.  *    LibpngLibDirStandard    Boolean - whether png libs are
  3747.  *                in default link path
  3748.  *    LibpngIncDir        Directory holding png includes
  3749.  *    LibpngIncDirStandard    Boolean - whether png includes are
  3750.  *                in default compile path
  3751.  *
  3752.  * Make sure that *Standard is set correctly, if not, the
  3753.  * standard compile/link paths will be added *before* the
  3754.  * local X directorys and installed versions of the standard
  3755.  * X headers will end up getting used.
  3756.  */
  3757.  
  3758. #ifndef LibpngDir
  3759. #define LibpngDir /usr
  3760. #define LibpngDirStandard YES
  3761. #endif
  3762. #ifndef LibpngDirStandard
  3763. #define LibpngDirStandard NO
  3764. #endif
  3765.  
  3766. #ifndef LibpngLibDir
  3767. #define LibpngLibDir LibpngDir/LibDirName
  3768. #if LibpngDirStandard
  3769. #define LibpngLibDirStandard YES
  3770. #endif
  3771. #endif
  3772. #ifndef LibpngLibDirStandard
  3773. #define LibpngLibDirStandard NO
  3774. #endif
  3775.  
  3776. #ifndef LibpngIncDir
  3777. #define LibpngIncDir LibpngDir/include
  3778. #if LibpngDirStandard
  3779. #define LibpngIncDirStandard YES
  3780. #endif
  3781. #endif
  3782. #ifndef LibpngIncDirStandard
  3783. #define LibpngIncDirStandard NO
  3784. #endif
  3785.  
  3786. LIBPNGINCDIR = LibpngIncDir
  3787. #if LibpngIncDirStandard
  3788. LIBPNGINC=
  3789. #else
  3790. LIBPNGINC = -I$(LIBPNGINCDIR)
  3791. #endif
  3792. LIBPNGDIR = LibpngDir
  3793. LIBPNGLIBDIR = LibpngLibDir
  3794. LIBPNGINCDIR = LibpngIncDir
  3795. #if LibpngLibDirStandard
  3796. LIBPNGLIB = -lpng
  3797. #else
  3798. LIBPNGLIB = -L$(LIBPNGLIBDIR) -lpng
  3799. #endif
  3800.  
  3801. #endif
  3802.  
  3803. #ifndef XmuuClientDepLibs
  3804. #define XmuuClientDepLibs $(DEPXMUULIB) $(DEPXLIB)
  3805. #endif
  3806. #ifndef XmuuClientLibs
  3807. #define XmuuClientLibs $(XMUULIB) $(XLIB)
  3808. #endif
  3809.  
  3810. #ifndef LdLibraryPath
  3811. #define LdLibraryPath LD_LIBRARY_PATH
  3812. #endif
  3813.  
  3814. #if BuildXKBlib
  3815. # ifndef SharedLibxkbfile
  3816. #  define SharedLibxkbfile    HasSharedLibraries
  3817. # endif
  3818. # ifndef NormalLibxkbfile
  3819. #  define NormalLibxkbfile    (!SharedLibxkbfile | ForceNormalLib)
  3820. # endif
  3821. # ifndef DebugLibxkbfile
  3822. #  define DebugLibxkbfile    NO
  3823. # endif
  3824. # ifndef ProfileLibxkbfile
  3825. #  define ProfileLibxkbfile    NO
  3826. # endif
  3827. #else
  3828. # ifndef SharedLibxkbfile
  3829. #  define SharedLibxkbfile    NO
  3830. # endif
  3831. # ifndef NormalLibxkbfile
  3832. #  define NormalLibxkbfile    NO
  3833. # endif
  3834. # ifndef DebugLibxkbfile
  3835. #  define DebugLibxkbfile    NO
  3836. # endif
  3837. # ifndef ProfileLibxkbfile
  3838. #  define ProfileLibxkbfile    NO
  3839. # endif
  3840. #endif
  3841.     XKBFILELIBSRC = $(LIBSRC)/xkbfile
  3842. #if SharedLibxkbfile
  3843. # ifndef SharedxkbfileRev
  3844. #  define SharedxkbfileRev    1.0
  3845. # endif
  3846. SharedLibReferences(XKBFILE,xkbfile,$(XKBFILESRC),SOXKBFILEREV, SharedxkbfileRev)
  3847. #else
  3848. ProjectUnsharedLibReferences(XKBFILE,xkbfile,$(XKBFILELIBSRC),XBuildLibDir)
  3849. #endif
  3850.  
  3851. #if BuildXKBlib
  3852. # ifndef XkbClientDepLibs
  3853. #  if UseXKBInClients
  3854. #   define XkbClientDepLibs    $(DEPXKBFILELIB)
  3855. #  else
  3856. #   define XkbClientDepLibs    /**/
  3857. #  endif
  3858. # endif
  3859. # ifndef XkbClientLibs
  3860. #  if UseXKBInClients
  3861. #   define XkbClientLibs    $(XKBFILELIB)
  3862. #  else
  3863. #   define XkbClientLibs    /**/
  3864. #  endif
  3865. # endif
  3866.  
  3867. # if defined(UseInstalled) || (CrossCompiling &&  UseInstalledOnCrossCompile)
  3868.      XKBCOMPCMD = $(XBINDIR)/XkbComp
  3869. # else
  3870.      XKBCOMPSRC = $(PROGRAMSRC)/XkbComp
  3871. #  if CrossCompiling
  3872.      XKBCOMPCMD = $(PROGRAMSRC)/XkbComp/cross/XkbComp
  3873. #  else
  3874.      XKBCOMPCMD = $(CLIENTENVSETUP) $(PRELOADSETUP) $(XBUILDBINDIR)/XkbComp
  3875. #  endif
  3876. # endif
  3877. #else /* !BuildXKBlib */
  3878. # ifndef XkbClientDepLibs
  3879. #  define XkbClientDepLibs
  3880. # endif
  3881. # ifndef XkbClientLibs
  3882. #  define XkbClientLibs
  3883. # endif
  3884. #endif /* BuildXKBlib */
  3885.  
  3886. #if BuildXKBlib
  3887. # ifndef SharedLibxkbui
  3888. #  define SharedLibxkbui    HasSharedLibraries
  3889. # endif
  3890. # ifndef NormalLibxkbui
  3891. #  define NormalLibxkbui    (!SharedLibxkbui || ForceNormalLib)
  3892. # endif
  3893. # ifndef DebugLibxkbui
  3894. #  define DebugLibxkbui        NO
  3895. # endif
  3896. # ifndef ProfileLibxkbui
  3897. #  define ProfileLibxkbui    NO
  3898. # endif
  3899. #else
  3900. # ifndef SharedLibxkbui
  3901. #  define SharedLibxkbui    NO
  3902. # endif
  3903. # ifndef NormalLibxkbui
  3904. #  define NormalLibxkbui    NO
  3905. # endif
  3906. # ifndef DebugLibxkbui
  3907. #  define DebugLibxkbui        NO
  3908. # endif
  3909. # ifndef ProfileLibxkbui
  3910. #  define ProfileLibxkbui    NO
  3911. # endif
  3912. #endif
  3913.     XKBUILIBSRC = $(LIBSRC)/xkbui
  3914. #if SharedLibxkbui
  3915. # ifndef SharedxkbuiRev
  3916. #  define SharedxkbuiRev    1.0
  3917. # endif
  3918. SharedLibReferences(XKBUI,xkbui,$(XKBUISRC),SOXKBUIREV, SharedxkbuiRev)
  3919. #else
  3920. ProjectUnsharedLibReferences(XKBUI,xkbui,$(XKBUILIBSRC),XBuildLibDir)
  3921. #endif
  3922.  
  3923. #ifndef XkbuiLibs
  3924. # define    XkbuiLibs $(XKBUILIB)
  3925. #endif
  3926. #ifndef XkbuiDepLibs
  3927. # define    XkbuiDepLibs $(DEPXKBFILELIB)
  3928. #endif
  3929.  
  3930. #ifndef ExtraXawReqs
  3931. # if BuildXaw
  3932. #  define ExtraXawReqs $(XPLIB)
  3933. # else
  3934. #  define ExtraXawReqs /**/
  3935. # endif
  3936. #endif
  3937.  
  3938. EXTRAXAWREQS = ExtraXawReqs
  3939.  
  3940. #ifndef ExtraXawClientDepLibs
  3941. # if BuildXaw
  3942. #  define ExtraXawClientDepLibs $(DEPXPLIB)
  3943. # else
  3944. #  define ExtraXawClientDepLibs /**/
  3945. # endif
  3946. #endif
  3947.  
  3948. EXTRAXAWCLIENTDEPLIBS = ExtraXawClientDepLibs
  3949.  
  3950. #ifndef XawClientDepLibs
  3951. #define XawClientDepLibs $(DEPXAWLIB) $(DEPXMULIB) $(DEPXTOOLLIB) $(DEPXPMLIB) $(EXTRAXAWCLIENTDEPLIBS) $(DEPXLIB)
  3952. #endif
  3953.  
  3954. #ifndef ExtraXawClientLibs
  3955. # if BuildXaw
  3956. #  define ExtraXawClientLibs $(XPLIB)
  3957. # else
  3958. #  define ExtraXawClientLibs /**/
  3959. # endif
  3960. #endif
  3961.  
  3962. EXTRAXAWCLIENTLIBS = ExtraXawClientLibs
  3963.  
  3964. #ifndef XawClientLibs
  3965. #define XawClientLibs $(XAWLIB) $(XMULIB) $(XTOOLLIB) $(XPMLIB) $(EXTRAXAWCLIENTLIBS) $(XLIB)
  3966. #endif
  3967.  
  3968. #ifndef SharedLibXTrap
  3969. #define SharedLibXTrap HasSharedLibraries
  3970. #endif
  3971. #ifndef NormalLibXTrap
  3972. #define NormalLibXTrap (!SharedLibXTrap | ForceNormalLib)
  3973. #endif
  3974. #ifndef DebugLibXTrap
  3975. #define DebugLibXTrap        NO    /* debugged XTrap library */
  3976. #endif
  3977. #ifndef ProfileLibXTrap
  3978. #define ProfileLibXTrap        NO    /* profiled XTrap library */
  3979. #endif
  3980.         XTRAPLIBSRC = $(LIBSRC)/XTrap
  3981. #if SharedLibXTrap
  3982. #ifndef SharedXTrapRev
  3983. #define SharedXTrapRev 6.4
  3984. #endif
  3985. SharedLibReferences(XTRAP,XTrap,$(XTRAPLIBSRC),SOXTRAPREV,SharedXTrapRev)
  3986. #else
  3987. ProjectUnsharedLibReferences(XTRAP,XTrap,$(XTRAPLIBSRC),XBuildLibDir)
  3988. #endif
  3989.  
  3990. #ifndef NeedDefaultDepLibs
  3991. #define NeedDefaultDepLibs YES
  3992. #endif
  3993.  
  3994. #if NeedDefaultDepLibs
  3995. /*
  3996.  * Individual libraries should override this
  3997.  */
  3998. #if HasSharedLibraries || defined(UseInstalled)
  3999.           DEPLIBS = $(DEPXAWLIB) $(DEPXMULIB) $(DEPXTOOLLIB) $(DEPXLIB)
  4000. #else
  4001.           DEPLIBS = $(LOCAL_LIBRARIES)
  4002. #endif
  4003.          DEPLIBS1 = $(DEPLIBS)
  4004.          DEPLIBS2 = $(DEPLIBS)
  4005.          DEPLIBS3 = $(DEPLIBS)
  4006.          DEPLIBS4 = $(DEPLIBS)
  4007.          DEPLIBS5 = $(DEPLIBS)
  4008.          DEPLIBS6 = $(DEPLIBS)
  4009.          DEPLIBS7 = $(DEPLIBS)
  4010.          DEPLIBS8 = $(DEPLIBS)
  4011.          DEPLIBS9 = $(DEPLIBS)
  4012.          DEPLIBS10 = $(DEPLIBS)
  4013. #endif /* NeedDefaultDepLibs */
  4014.  
  4015.  
  4016. /*
  4017.  * InstallAppDefaults - simple rules to install application default file
  4018.  */
  4019. #ifndef InstallAppDefaults
  4020. #define InstallAppDefaults(class) InstallAppDefaultsLong(class,class)
  4021. #endif /* InstallAppDefaults */
  4022.  
  4023. /*
  4024.  * InstallAppDefaultsLong - general rule to install application default file
  4025.  * if the InstallAppDefFiles configuration parameter is set.
  4026.  */
  4027. #ifndef InstallAppDefaultsLong
  4028. #if UseConfDirForAppDefaults
  4029. #if InstallAppDefFiles
  4030. #define InstallAppDefaultsLong(file,class)                @@\
  4031. LinkConfDirectory(app-defaults,.,app-defaults,.)            @@\
  4032. InstallNamedTarget(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class)
  4033. #else
  4034. #define InstallAppDefaultsLong(file,class)                @@\
  4035. LinkConfDirectory(app-defaults,.,app-defaults,.)            @@\
  4036. InstallNamedTargetNoClobber(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class)
  4037. #endif /* InstallAppDefFiles */
  4038. #else /* UseConfDirForAppDefaults */
  4039. #if InstallAppDefFiles
  4040. #define InstallAppDefaultsLong(file,class)                @@\
  4041. InstallNamedTarget(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class)
  4042. #else
  4043. #define InstallAppDefaultsLong(file,class)                @@\
  4044. InstallNamedTargetNoClobber(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class)
  4045. #endif /* InstallAppDefFiles */
  4046. #endif /* UseConfDirForAppDefaults */
  4047. #endif /* InstallAppDefaultsLong */
  4048.  
  4049. /*
  4050.  * MakeFcCache - generate rules to build fontconfig cache database
  4051.  */
  4052.  
  4053. #if defined UseFreetype2 && !CrossCompiling
  4054.  
  4055. # ifndef MakeFcCache
  4056. #  define MakeFcCache(deplist)                        @@\
  4057. all:: fonts.cache                            @@\
  4058.                                     @@\
  4059. fonts.cache: deplist                            @@\
  4060.     RunProgram(FCCACHE, $(FCCACHEOPTS) .)                @@\
  4061.                                     @@\
  4062. clean::                                    @@\
  4063.     RemoveFiles(fonts.cache*)
  4064. # endif /* MakeFcCache */
  4065.  
  4066. # ifndef InstallFcCache
  4067. #  define InstallFcCache(dest)                        @@\
  4068. install::                                @@\
  4069.     RunProgram(FCCACHE, $(FCCACHEOPTS) $(DESTDIR)dest)
  4070. # endif /* InstallFcCache */
  4071.  
  4072. #else
  4073.  
  4074. #ifndef MakeFcCache
  4075. #define MakeFcCache(deplist)
  4076. #endif
  4077.  
  4078. #ifndef InstallFcCache
  4079. #define InstallFcCache(dest)
  4080. #endif
  4081.  
  4082. #endif
  4083.  
  4084. /*
  4085.  * MakeFontsScale - generate rules to build fonts.scale database.
  4086.  */
  4087. #ifndef MakeFontsScale
  4088. # if !CrossCompiling ||  UseInstalledOnCrossCompile
  4089. #  define MakeFontsScale(deplist)                    @@\
  4090. all:: fonts.scale                            @@\
  4091.                                     @@\
  4092. fonts.scale:  deplist                            @@\
  4093.     RemoveFile(fonts.scale)                        @@\
  4094.     RunProgram(MKFONTSCALE, .)                    @@\
  4095.                                     @@\
  4096. clean::                                    @@\
  4097.     RemoveFile(fonts.scale)
  4098. # else
  4099. #  define MakeFontsScale(deplist)                    @@\
  4100. clean::                                    @@\
  4101.     RemoveFile(fonts.scale)
  4102. # endif
  4103. #endif /* MakeFontsScale */
  4104.  
  4105. /*
  4106.  * MakeFontsDir - generate rules to build fonts.dir database.
  4107.  */
  4108. #ifndef MakeFontsDir
  4109. # if !CrossCompiling ||  UseInstalledOnCrossCompile
  4110. #  define MakeFontsDir(deplist)                        @@\
  4111. all:: fonts.dir                                @@\
  4112.                                     @@\
  4113. fonts.dir:  deplist                            @@\
  4114.     RemoveFile(fonts.dir)                        @@\
  4115.     RunProgram(MKFONTDIR, $(MKFONTDIROPTS) .)            @@\
  4116.                                     @@\
  4117. clean::                                    @@\
  4118.     RemoveFile(fonts.dir)
  4119. # else
  4120. #  define MakeFontsDir(deplist)                        @@\
  4121. clean::                                    @@\
  4122.     RemoveFile(fonts.dir)
  4123. # endif
  4124. #endif /* MakeFontsDir */
  4125.  
  4126.  
  4127. /*
  4128.  * MakeFonts - generate rules to build font database.
  4129.  */
  4130. #ifndef MakeFonts
  4131. # if !CrossCompiling || UseInstalledOnCrossCompile
  4132. #  define MakeFonts()                            @@\
  4133. all::  $(OBJS)                                @@\
  4134.                                     @@\
  4135. MakeFontsDir($(OBJS))                            @@\
  4136.                                     @@\
  4137. clean::                                    @@\
  4138.     RemoveFiles(*.pcf *.pcf.Z *.pcf.gz)
  4139. # else
  4140. #  define MakeFonts()                            @@\
  4141. MakeFontsDir($(OBJS))                            @@\
  4142.                                     @@\
  4143. clean::                                    @@\
  4144.     RemoveFiles(*.pcf *.pcf.Z *.pcf.gz)
  4145. # endif
  4146. #endif /* MakeFonts */
  4147.  
  4148. #ifndef InstallFontsDir
  4149. # if !CrossCompiling ||  UseInstalledOnCrossCompile
  4150. #  define InstallFontsDir(dest)                        @@\
  4151. install::                                @@\
  4152.     MakeDir($(DESTDIR)dest)                        @@\
  4153.     @if [ X$(STATIC_FONTS_SCALE) = X ]; then (set -x; \        @@\
  4154.       RemoveFile($(DESTDIR)dest/fonts.scale); \            @@\
  4155.       RunProgram(MKFONTSCALE, $(DESTDIR)dest)); \            @@\
  4156.     else (set -x; \                            @@\
  4157.       InstallInline(fonts.scale,$(INSTDATFLAGS),dest)); \        @@\
  4158.     fi                                @@\
  4159.     RemoveFile($(DESTDIR)dest/fonts.dir)                @@\
  4160.     RunProgram(MKFONTDIR, $(MKFONTDIROPTS) $(DESTDIR)dest)
  4161. # else
  4162. #  define InstallFontsDir(dest)
  4163. # endif
  4164. #endif
  4165.  
  4166. /*
  4167.  * InstallFontObjs - generate rules to install font files
  4168.  */
  4169. #ifndef InstallFontObjs
  4170. # if !CrossCompiling || UseInstalledOnCrossCompile
  4171. #  define InstallFontObjs(objs,dest)                    @@\
  4172. InstallMultipleFlags(objs,dest,$(INSTDATFLAGS))                @@\
  4173.                                     @@\
  4174. InstallFontsDir(dest)
  4175. # else
  4176. #  define InstallFontObjs(objs,dest)
  4177. # endif
  4178. #endif /* InstallFontObjs */
  4179.  
  4180.  
  4181. /*
  4182.  * InstallFonts - generate rules to install font files
  4183.  */
  4184. #ifndef InstallFonts
  4185. #define InstallFonts(dest)                        @@\
  4186. InstallFontObjs($(OBJS),dest)
  4187. #endif /* InstallFonts */
  4188.  
  4189.  
  4190. /*
  4191.  * InstallFontAliases - generate rules to install font aliases databases.
  4192.  */
  4193. #ifndef InstallFontAliases
  4194. #define InstallFontAliases(dest)                    @@\
  4195. InstallTarget(install,fonts.alias,$(INSTDATFLAGS),dest)
  4196. #endif /* InstallFontAliases */
  4197.  
  4198. #ifndef InstallNamedFontAliases
  4199. #define InstallNamedFontAliases(src,dest)                @@\
  4200. InstallNamedTarget(install,src,$(INSTDATFLAGS),dest,fonts.alias)
  4201. #endif /* InstallNamedFontAliases */
  4202.  
  4203. #ifndef FontSrc
  4204. #define FontSrc(basename) basename.bdf
  4205. #endif
  4206.  
  4207. #ifndef FontBaseObj
  4208. #define FontBaseObj(basename)basename.pcf
  4209. #endif
  4210.  
  4211. /*
  4212.  * InstallFontScale - generate rules to install font scale database.
  4213.  */
  4214. #ifndef InstallFontScale
  4215. #define InstallFontScale(dest)                        @@\
  4216. InstallTarget(install,fonts.scale,$(INSTDATFLAGS),dest)
  4217. #endif /* InstallFontScale */
  4218.  
  4219. /*
  4220.  * UncompressedFontTargetLong
  4221.  */
  4222. #if ! CrossCompiling || UseInstalledOnCrossCompile
  4223. # ifndef UncompressedFontTargetLong
  4224. #  define UncompressedFontTargetLong(sname,tname)            @@\
  4225. FontBaseObj(tname):  FontSrc(sname)                    @@\
  4226.     RunProgram(FONTC,$(FONTCFLAGS) $? -o $@)
  4227. # endif /* UncompressedFontTargetLong */
  4228. #else
  4229. # ifndef UncompressedFontTargetLong
  4230. #  define UncompressedFontTargetLong(sname,tname)
  4231. # endif
  4232. #endif
  4233.  
  4234. /*
  4235.  * CompressedFontTarget
  4236.  */
  4237. #ifndef GzipFontCompression
  4238. #define GzipFontCompression NO
  4239. #endif
  4240.  
  4241. #if ! CrossCompiling || UseInstalledOnCrossCompile
  4242. # ifndef CompressedFontTargetLong
  4243. #  if GzipFontCompression
  4244. #   define CompressedFontTargetLong(sname,tname)            @@\
  4245. FontBaseObj(tname).gz:  FontSrc(sname)                    @@\
  4246.     RunProgram(FONTC,$(FONTCFLAGS) $?) | $(GZIPCMD) > $@
  4247. #  else
  4248. #   define CompressedFontTargetLong(sname,tname)            @@\
  4249. FontBaseObj(tname).Z:  FontSrc(sname)                    @@\
  4250.     RunProgram(FONTC,$(FONTCFLAGS) $?) | $(COMPRESS) > $@
  4251. #  endif
  4252. # endif /* CompressedFontTargetLong */
  4253. #else
  4254. #   define CompressedFontTargetLong(sname,tname)
  4255. #endif
  4256.  
  4257. /*
  4258.  * UncompressedFontTarget
  4259.  */
  4260. #ifndef UncompressedFontTarget
  4261. #define UncompressedFontTarget(basename) UncompressedFontTargetLong(basename,basename)
  4262. #endif /* UncompressedFontTarget */
  4263.  
  4264. #ifndef CompressedFontTarget
  4265. #define CompressedFontTarget(basename) CompressedFontTargetLong(basename,basename)
  4266. #endif /* CompressedFontTarget */
  4267.  
  4268. #if !defined(FontTarget) && !defined(FontObj)
  4269. #if CompressAllFonts
  4270. #define FontTargetLong(sname,tname) CompressedFontTargetLong(sname,tname)
  4271. #define FontTarget(basename) CompressedFontTarget(basename)
  4272. #if GzipFontCompression
  4273. #define FontObj(basename) FontBaseObj(basename).gz
  4274. #else
  4275. #define FontObj(basename) FontBaseObj(basename).Z
  4276. #endif
  4277. #else
  4278. #define FontTargetLong(sname,tname) UncompressedFontTargetLong(sname,tname)
  4279. #define FontTarget(basename) UncompressedFontTarget(basename)
  4280. #define FontObj(basename) FontBaseObj(basename)
  4281. #endif /* CompressAllFonts */
  4282. #endif
  4283.  
  4284.  
  4285. #ifndef EncObj
  4286. #define EncObj(basename) basename.enc
  4287. #endif
  4288. #ifndef EncObjComp
  4289. #if GzipFontCompression
  4290. #define EncObjComp(basename) basename.enc.gz
  4291. #else
  4292. #define EncObjComp(basename) basename.enc.Z
  4293. #endif
  4294. #endif
  4295.  
  4296. #ifndef EncodingTarget
  4297. #define EncodingTarget(basename) /**/
  4298. #endif
  4299.  
  4300. #ifndef CompEncodingTarget
  4301. #if GzipFontCompression
  4302. #define CompEncodingTarget(basename)                    @@\
  4303. EncObjComp(basename): EncObj(basename)                    @@\
  4304.     cat $? | $(GZIPCMD) > $@
  4305. #else
  4306. #define CompEncodingTarget(basename)                    @@\
  4307. EncObjComp(basename): EncObj(basename)                    @@\
  4308.     cat $? | $(COMPRESS) > $@
  4309. #endif
  4310. #endif
  4311.  
  4312. #ifndef MakeEncDir
  4313. # if !CrossCompiling || UseInstalledOnCrossCompile
  4314. #  define MakeEncDir(deplist,inst,dirlist )                @@\
  4315. AllTarget(encodings.dir)                        @@\
  4316.                                     @@\
  4317. encodings.dir: deplist                            @@\
  4318.     RemoveFiles(encodings.dir fonts.dir)                @@\
  4319.     @(E=; for i in dirlist; do \                    @@\
  4320.        E="$$E -e $$i"; done; \                    @@\
  4321.      set -x; \                            @@\
  4322.      RunProgram(MKFONTDIR, -n -r -p inst/ $$E .))            @@\
  4323.                                     @@\
  4324. clean::                                    @@\
  4325.     RemoveFiles(fonts.dir encodings.dir)
  4326. # else
  4327. #  define MakeEncDir(deplist,inst,dirlist )                @@\
  4328. clean::                                    @@\
  4329.     RemoveFiles(fonts.dir encodings.dir)
  4330. # endif
  4331. #endif
  4332.  
  4333. #ifndef MakeEncodings
  4334. #define MakeEncodings(deplist,inst,dirlist)                @@\
  4335.                                     @@\
  4336. MakeEncDir(deplist $(OBJS),inst,dirlist)                @@\
  4337.                                     @@\
  4338. clean::                                    @@\
  4339.     RemoveFiles(*.enc.Z *.enc.gz)
  4340. #endif /* MakeEncodings */
  4341.  
  4342. #ifndef InstallEncObjs
  4343. # if !CrossCompiling || UseInstalledOnCrossCompile
  4344. #  define InstallEncObjs(objs,dest)                    @@\
  4345. InstallMultipleFlags(objs,dest,$(INSTDATFLAGS))                @@\
  4346.                                     @@\
  4347. InstallTarget(install,encodings.dir,$(INSTDATFLAGS),dest)
  4348. # else
  4349. #  define InstallEncObjs(objs,dest)
  4350. # endif
  4351. #endif /* InstallEncObjs */
  4352.  
  4353. #ifndef InstallEncodings
  4354. #define InstallEncodings(dest)                        @@\
  4355. InstallEncObjs($(OBJS),dest)
  4356. #endif /* InstallEncodings */
  4357.  
  4358. #ifndef InstallEncodingsDir
  4359. # if !CrossCompiling || UseInstalledOnCrossCompile
  4360. #  define InstallEncodingsDir(edir,fdir)                @@\
  4361. InstallNamedTarget(install,edir/encodings.dir,$(INSTDATFLAGS),fdir,encodings.dir)
  4362. # else
  4363. #  define InstallEncodingsDir(edir,fdir)
  4364. # endif
  4365. #endif
  4366.  
  4367.  
  4368. #ifndef MakeBdfFontFromUCSMaster
  4369. #define MakeBdfFontFromUCSMaster(font,enc)                @@\
  4370. font-enc.bdf: font.bdf $(UCS2ANY)                    @@\
  4371.     RemoveFile($@)                            @@\
  4372.     $(UCS2ANY) font.bdf $(UCSMAPPREFIX)enc enc            @@\
  4373.                                     @@\
  4374. clean::                                    @@\
  4375.     RemoveFile(font-enc.bdf)
  4376. #endif
  4377.  
  4378. #ifndef MakeTruncatedUCSBdfFont
  4379. #if HasPerl5
  4380. #define MakeTruncatedUCSBdfFont(font,trunc,name)            @@\
  4381. name.bdf: font.bdf $(BDFTRUNCATE)                    @@\
  4382.     RemoveFile($@)                            @@\
  4383.     RunPerlScript($(BDFTRUNCATE),trunc < font.bdf > name.bdf)    @@\
  4384.                                     @@\
  4385. clean::                                    @@\
  4386.     RemoveFile(name.bdf)
  4387. #endif
  4388. #endif
  4389.  
  4390. /* 
  4391.  * InstallXpPMFLink - install link for a Xprint PMF "font" from one
  4392.  * print model to another
  4393.  */
  4394. #ifndef InstallXpPMFLink
  4395. #define InstallXpPMFLink(fontfilename,srcmodelfontdir,destmodelfontdir)                @@\
  4396.     InstallLink(install,srcmodelfontdir/fontfilename,fontfilename,destmodelfontdir)
  4397. #endif /* InstallXpPMFLink */
  4398. /* 
  4399.  * InstallXpMultiplePMFLinks - install multiple links for PMF fonts
  4400.  * from one print model to another
  4401.  */
  4402. #ifndef InstallXpMultiplePMFLinks
  4403. #define InstallXpMultiplePMFLinks(list,srcmodelfontdir,destmodelfontdir)            @@\
  4404. install::                                            @@\
  4405.     MakeDir($(DESTDIR)destmodelfontdir)                            @@\
  4406.     for i in list ; do \                                    @@\
  4407.         $(RM) $(DESTDIR)destmodelfontdir/$$i ; \                        @@\
  4408.         $(LN) -s -f srcmodelfontdir/$$i $(DESTDIR)destmodelfontdir/$$i ; \            @@\
  4409.     done
  4410. #endif /* InstallXpPMFLink */
  4411.  
  4412. /*
  4413.  * InstallXpPMFFontsDir - make and install a fonts.dir index for model-config fonts
  4414.  */
  4415. #ifndef InstallXpPMFFontsDir
  4416. #if BuildServersOnly
  4417. #define InstallXpPMFFontsDir(destmodelfontdir) /**/
  4418. #else
  4419. #define InstallXpPMFFontsDir(destmodelfontdir)            @@\
  4420. install::                            @@\
  4421.     ($(MKFONTSCALE) -b -s -l $(DESTDIR)destmodelfontdir)
  4422. #endif
  4423. #endif /* InstallXpPMFFontsDir */
  4424.  
  4425.  
  4426. /*
  4427.  * MakeXkbDir
  4428.  */
  4429. #ifndef MakeXkbDir
  4430. # if !CrossCompiling || UseInstalledOnCrossCompile
  4431. #  define MakeXkbDir(basedir,subdir)                    @@\
  4432. all::   Concat(subdir,.dir)                        @@\
  4433.                                     @@\
  4434. Concat(subdir,.dir):                            @@\
  4435.     RemoveFile(Concat(subdir,.dir))                    @@\
  4436.     $(XKBCOMPCMD) -lfhlpR -o Concat(subdir,.dir) '*'        @@\
  4437.                                     @@\
  4438. InstallTarget(install,Concat(subdir,.dir),$(INSTDATFLAGS),basedir)    @@\
  4439.                                     @@\
  4440. clean::                                    @@\
  4441.     RemoveFile(Concat(subdir,.dir))
  4442. # else
  4443. #  define MakeXkbDir(basedir,subdir)                    @@\
  4444. clean::                                    @@\
  4445.     RemoveFile(Concat(subdir,.dir))
  4446. # endif
  4447. #endif
  4448.  
  4449. /*
  4450.  * PostProcessTroffPS - by default moves the working output into place,
  4451.  * but can be a hook for more complicated post-processing.
  4452.  */
  4453. #ifndef PostProcessTroffPS
  4454. #define PostProcessTroffPS(temp,real) $(MV) temp real
  4455. #endif
  4456.  
  4457. /*
  4458.  * PostProcessTroffHTML - by default moves the working output into place,
  4459.  * but can be a hook for more complicated post-processing.
  4460.  */
  4461. #ifndef PostProcessTroffHTML
  4462. #define PostProcessTroffHTML(temp,real) $(MV) temp real
  4463. #endif
  4464.  
  4465. #ifdef HTMLroffCmd
  4466. #define HtmlTarget(file) file.html
  4467. #define HtmlClean(file) file.nhtml file.html file*.png
  4468. #else
  4469. #define HtmlTarget(file) /**/
  4470. #define HtmlClean(file) /**/
  4471. #endif
  4472.  
  4473. #ifdef PsToPdfCmd
  4474. #define PdfTarget(file) file.pdf
  4475. #define PdfClean(file) file.pdf
  4476. #else
  4477. #define PdfTarget(file) /**/
  4478. #define PdfClean(file) /**/
  4479. #endif
  4480.  
  4481. #ifndef ConvertPsToPdf
  4482. #ifdef PsToPdfCmd
  4483. #define ConvertPsToPdf(file)                        @@\
  4484. file.pdf: file.ps                            @@\
  4485.     RemoveFile(file.pdf)                        @@\
  4486.     $(PSTOPDFCMD) < file.ps > file.pdf
  4487. #else
  4488. #define ConvertPsToPdf(file) /**/
  4489. #endif
  4490. #endif
  4491.  
  4492. #if HasPdfLatex
  4493. #define PdfLatexTarget(file) file.pdf
  4494. #define PdfLatexClean(file) file.pdf
  4495. #else
  4496. #define PdfLatexTarget(file) /**/
  4497. #define PdfLatexClean(file) /**/
  4498. #endif
  4499.  
  4500. #ifndef LatexToPdf
  4501. #if HasPdfLatex && defined(PdfLatexCmd)
  4502. #define LatexToPdf(file)                        @@\
  4503. file.pdf: file.tex                            @@\
  4504.     RemoveFile(file.pdf)                        @@\
  4505.     $(PDFLATEXCMD) file.tex
  4506. #else
  4507. #define LatexToPdf(file) /**/
  4508. #endif
  4509. #endif
  4510.  
  4511.  
  4512. #ifndef MakeDepSimpleHtmlDoc
  4513. #ifdef HTMLroffCmd
  4514. #define MakeDepSimpleHtmlDoc(file,deps,srcs)                @@\
  4515. HtmlTarget(file): deps                            @@\
  4516.     $(HTMLROFF) $(MSMACROS) $(XDOCMACROS) Concat(-P-I,file) srcs \        @@\
  4517.         2> index.raw > file.nhtml \                @@\
  4518.       && PostProcessTroffHTML(file.nhtml,$@)
  4519. #else
  4520. #define MakeDepSimpleHtmlDoc(file,deps,srcs) /**/
  4521. #endif
  4522. #endif
  4523.  
  4524. #ifndef MakeTblHtmlDoc
  4525. #ifdef HTMLroffCmd
  4526. #define MakeTblHtmlDoc(file,srcs)                    @@\
  4527. file.html: srcs                                @@\
  4528.     $(TBL) $(XDOCMACROS) srcs | $(HTMLROFF) $(MSMACROS) Concat(-P-I,file) \    @@\
  4529.         2> index.raw > file.nhtml \                @@\
  4530.       && PostProcessTroffHTML(file.nhtml,$@)
  4531. #else
  4532. #define MakeTblHtmlDoc(file,srcs) /**/
  4533. #endif
  4534. #endif
  4535.  
  4536. #ifndef MakeEqnHtmlDoc
  4537. #ifdef HTMLroffCmd
  4538. #define MakeEqnHtmlDoc(file,srcs)                    @@\
  4539. file.html: srcs                                @@\
  4540.     $(TBL) $(XDOCMACROS) srcs | $(EQN) | $(HTMLROFF) $(MSMACROS) Concat(-P-I,file) \ @@\
  4541.         2> index.raw > file.nhtml \                @@\
  4542.       && PostProcessTroffHTML(file.nhtml,$@)
  4543. #else
  4544. #define MakeEqnHtmlDoc(file,srcs) /**/
  4545. #endif
  4546. #endif
  4547.  
  4548.  
  4549. #ifndef MakeDepSimpleDoc
  4550. #define MakeDepSimpleDoc(file,deps,srcs)                @@\
  4551. all:: file.ps file.txt HtmlTarget(file) PdfTarget(file)            @@\
  4552. .PRECIOUS: file.ps                            @@\
  4553.                                     @@\
  4554. file.ps: deps                                @@\
  4555.     -$(TROFF) $(MSMACROS) $(XDOCMACROS) srcs \            @@\
  4556.         2> index.raw > file.nps \                @@\
  4557.     && PostProcessTroffPS(file.nps,$@)                @@\
  4558.     @if grep '^[^1-9.]' index.raw | grep -v warning; then exit 1; \    @@\
  4559.         else test $$? -le 1; fi                    @@\
  4560.                                     @@\
  4561. file.txt: deps                                @@\
  4562.     $(NROFF) $(MSMACROS) $(XDOCMACROS) srcs 2> index.raw | \    @@\
  4563.          $(COL) $(COLFLAGS) > $@                @@\
  4564.                                     @@\
  4565. MakeDepSimpleHtmlDoc(file,deps,srcs)                    @@\
  4566.                                     @@\
  4567. ConvertPsToPdf(file)                            @@\
  4568.                                     @@\
  4569. clean::                                    @@\
  4570.     $(RM) index.raw file.nps file.ps file.txt HtmlClean(file) PdfClean(file)
  4571. #endif
  4572.  
  4573. #ifndef MakeSimpleDoc
  4574. #define MakeSimpleDoc(file,srcs) MakeDepSimpleDoc(file,srcs,srcs)
  4575. #endif
  4576.  
  4577. #ifndef MakeTblDoc
  4578. #define MakeTblDoc(file,srcs)                        @@\
  4579. all:: file.ps file.txt HtmlTarget(file) PdfTarget(file)            @@\
  4580. .PRECIOUS: file.ps                            @@\
  4581.                                     @@\
  4582. file.ps: srcs                                @@\
  4583.     -$(TBL) $(XDOCMACROS) srcs | $(TROFF) $(MSMACROS) \        @@\
  4584.         2> index.raw > file.nps \                @@\
  4585.     && PostProcessTroffPS(file.nps,$@)                @@\
  4586.     @if grep '^[^1-9.]' index.raw | grep -v warning; then exit 1; \    @@\
  4587.         else test $$? -le 1; fi                    @@\
  4588.                                     @@\
  4589. file.txt: srcs                                @@\
  4590.     $(TBL) $(XDOCMACROS) srcs | $(NROFF) $(MSMACROS) 2> index.raw \    @@\
  4591.         | $(COL) $(COLFLAGS) > $@                @@\
  4592.                                     @@\
  4593. MakeTblHtmlDoc(file,srcs)                        @@\
  4594.                                     @@\
  4595. ConvertPsToPdf(file)                            @@\
  4596.                                     @@\
  4597. clean::                                    @@\
  4598.     $(RM) index.raw file.nps file.ps file.txt HtmlClean(file) PdfClean(file)
  4599. #endif
  4600.  
  4601. #ifndef MakeEqnDoc
  4602. #define MakeEqnDoc(file,srcs)                        @@\
  4603. all:: file.ps file.txt HtmlTarget(file) PdfTarget(file)            @@\
  4604. .PRECIOUS: file.ps                            @@\
  4605.                                     @@\
  4606. file.ps: srcs                                @@\
  4607.     -$(TBL) $(XDOCMACROS) srcs | $(EQN) | $(TROFF) $(MSMACROS) \    @@\
  4608.         2> index.raw > file.nps \                @@\
  4609.     && PostProcessTroffPS(file.nps,$@)                @@\
  4610.     @if grep '^[^1-9.]' index.raw | grep -v warning; then exit 1; \    @@\
  4611.         else test $$? -le 1; fi                    @@\
  4612.                                     @@\
  4613. file.txt: srcs                                @@\
  4614.     $(TBL) $(XDOCMACROS) srcs | $(NEQN) | $(NROFF) $(MSMACROS) \    @@\
  4615.         2> index.raw | $(COL) $(COLFLAGS) > $@            @@\
  4616.                                     @@\
  4617. MakeEqnHtmlDoc(file,srcs)                        @@\
  4618.                                     @@\
  4619. ConvertPsToPdf(file)                            @@\
  4620.                                     @@\
  4621. clean::                                    @@\
  4622.     $(RM) index.raw file.nps file.ps file.txt HtmlClean(file) PdfClean(file)
  4623. #endif
  4624.  
  4625. #ifndef MakeDocIndex
  4626. #define MakeDocIndex(file,srcs)                        @@\
  4627. all:: file.idx.ps                            @@\
  4628.                                     @@\
  4629. file.idx.ps: srcs index.raw                        @@\
  4630.     sed -n '$$p' index.raw > index.pageno                @@\
  4631.     grep '^[1-9]' index.raw | \                    @@\
  4632.         (sort -f '-t:' -k2,2 -k1,1n 2>/dev/null || \        @@\
  4633.          sort -f '-t:' +1 -3 +0n -1n) | \            @@\
  4634.         awk -f $(DOCUTILSRC)/fixindex.awk | \            @@\
  4635.         awk -f $(DOCUTILSRC)/block.awk > index.troff        @@\
  4636.     cat srcs $(XIDXMACROS) index.troff | \                @@\
  4637.         $(TROFF) -me > file.idx.nps && \            @@\
  4638.         $(MV) file.idx.nps $@                    @@\
  4639.     $(RM) index.troff index.pageno                    @@\
  4640.                                     @@\
  4641. clean::                                    @@\
  4642.     $(RM) index.troff index.pageno file.idx.nps file.idx.ps
  4643. #endif
  4644.  
  4645. #ifndef MakeLatexDoc
  4646. #if HasLatex
  4647. #define MakeLatexDoc(file,src)                        @@\
  4648. all:: file.ps PdfLatexTarget(file)                    @@\
  4649.                                     @@\
  4650. file.dvi: src                                @@\
  4651.     $(LATEX) src                            @@\
  4652.                                     @@\
  4653. file.ps: file.dvi                            @@\
  4654.     $(DVIPS) -o file.nps file && $(MV) file.nps $@            @@\
  4655.                                     @@\
  4656. LatexToPdf(file)                            @@\
  4657.                                     @@\
  4658. clean::                                    @@\
  4659.     RemoveFiles(file.nps file.ps file.dvi file.log)            @@\
  4660.     RemoveFiles(file.aux file.toc file.lof file.lot)        @@\
  4661.     $(RM) PdfLatexClean(file)
  4662. #else /* HasLatex */
  4663. #define MakeLatexDoc(file,src)                        @@\
  4664. all::                                    @@\
  4665. file.ps: src                                @@\
  4666.     @echo "cannot make file.ps: no latex on this system"; exit 1
  4667. #endif /* HasLatex (else) */
  4668. #endif /* MakeLatexDoc */
  4669.  
  4670. #ifndef InstallDoc
  4671. #define InstallDoc(name,deps)                        @@\
  4672. install:: deps                                @@\
  4673.     MakeDir($(DESTDIR)$(DOCPSDIR))                    @@\
  4674.     @if [ -f name.ps -a X$(NOPS) = X ]; then set -x; \        @@\
  4675.       $(INSTALL) $(INSTALLFLAGS) $(INSTDATFLAGS) name.ps \        @@\
  4676.         $(DESTDIR)$(DOCPSDIR); \                @@\
  4677.     fi ; RemoveOldFile(name.ps,name.PS,$(DOCPSDIR))            @@\
  4678.     MakeDir($(DESTDIR)$(DOCDIR))                    @@\
  4679.     @if [ -f name.txt -a X$(NOTXT) = X ]; then set -x; \        @@\
  4680.       $(INSTALL) $(INSTALLFLAGS) $(INSTDATFLAGS) name.txt \        @@\
  4681.         $(DESTDIR)$(DOCDIR); \                    @@\
  4682.     fi ; RemoveOldFile(name.txt,name.TXT,$(DOCDIR))            @@\
  4683.     MakeDir($(DESTDIR)$(DOCHTMLDIR))                @@\
  4684.     @if [ -f name.html -a X$(NOHTML) = X ]; then (set -x; \        @@\
  4685.       $(INSTALL) $(INSTALLFLAGS) $(INSTDATFLAGS) name.html \    @@\
  4686.         $(DESTDIR)$(DOCHTMLDIR)); \                @@\
  4687.       for i in name*.png; do \                    @@\
  4688.         if [ -f $$i ]; then (set -x; \                @@\
  4689.           $(INSTALL) $(INSTALLFLAGS) $(INSTDATFLAGS) $$i \        @@\
  4690.         $(DESTDIR)$(DOCHTMLDIR)); \                @@\
  4691.         fi; \                            @@\
  4692.       done; \                            @@\
  4693.     fi                                @@\
  4694.     MakeDir($(DESTDIR)$(DOCPDFDIR))                    @@\
  4695.     @if [ -f name.pdf -a X$(NOPDF) = X ]; then set -x; \        @@\
  4696.       $(INSTALL) $(INSTALLFLAGS) $(INSTDATFLAGS) name.pdf \        @@\
  4697.         $(DESTDIR)$(DOCPDFDIR); \                @@\
  4698.     fi
  4699. #endif
  4700.  
  4701. #ifndef InstallRoffDoc
  4702. #define InstallRoffDoc(name) InstallDoc(name,name.ps name.txt)
  4703. #endif
  4704.  
  4705. #ifndef InstallLatexDoc
  4706. #if HasLatex
  4707. #define InstallLatexDoc(name) InstallDoc(name,name.ps)
  4708. #else
  4709. #define InstallLatexDoc(name)
  4710. #endif
  4711. #endif
  4712.  
  4713. #ifndef LinkHardcopyPS
  4714. # if CaseSensitiveFileSystem
  4715. #  define LinkHardcopyPS(name)                          \
  4716.     @if [ -f name.PS ]; then set -x; \                @@\
  4717.       RemoveFile(name.ps); \                    @@\
  4718.       $(LN) name.PS name.ps; \                    @@\
  4719.     fi
  4720. # else
  4721. #  define LinkHardcopyPS(name)
  4722. # endif
  4723. #endif
  4724.  
  4725.  
  4726. #ifndef InstallHardcopyDoc
  4727. #define InstallHardcopyDoc(name,deps)                    @@\
  4728. all:: name.ps PdfTarget(name)                        @@\
  4729.                                     @@\
  4730. name.ps: deps                                @@\
  4731.     @if [ -f name.PS.gz ]; then set -x; \                @@\
  4732.       RemoveFile(name.ps); \                    @@\
  4733.       gzip -d < name.PS.gz > name.ps; \                @@\
  4734.     fi                                @@\
  4735.     LinkHardcopyPS(name)                        @@\
  4736.                                     @@\
  4737. ConvertPsToPdf(name)                            @@\
  4738.                                     @@\
  4739. clean::                                    @@\
  4740.     $(RM) name.ps PdfClean(name)                    @@\
  4741.                                     @@\
  4742. InstallDoc(name,deps)
  4743. #endif
  4744.  
  4745. /*
  4746.  * Rule for maintainers to use to updated generated copies of fonts in the
  4747.  * source tree.  Use with care.
  4748.  */
  4749.  
  4750. #ifndef UpdateDerivedFont
  4751. #define UpdateDerivedFont(src,dst)                    @@\
  4752. update.fonts:: src                            @@\
  4753.     -@if [ -f dst ]; then \                        @@\
  4754.         if [ "$(FORCEUPDATE)" = yes ]; then \            @@\
  4755.         if [ "$(FOLLOWLINK)" = no ]; then \            @@\
  4756.             (set -x; $(RM) dst); \                @@\
  4757.         fi; \                            @@\
  4758.         set -x; cp src dst; \                    @@\
  4759.         else \                            @@\
  4760.         grep -v "XFree86:" src > __tmp1__; \            @@\
  4761.         grep -v "XFree86:" dst > __tmp2__; \            @@\
  4762.         if diff __tmp1__ __tmp2__ > /dev/null 2>&1; then :; \    @@\
  4763.         else \                            @@\
  4764.             if [ "$(FOLLOWLINK)" = no ]; then \        @@\
  4765.                 (set -x; $(RM) dst); \            @@\
  4766.             fi; \                        @@\
  4767.             set -x; cp src dst; \                    @@\
  4768.         fi; \                            @@\
  4769.         fi; \                            @@\
  4770.     fi                                @@\
  4771.     @$(RM) __tmp1__ __tmp2__
  4772. #endif
  4773.  
  4774. #if !HasFreetype2
  4775.       FT2PRELOADPATTERN = libfreetype.so.?
  4776. #endif
  4777. #if !HasFontconfig
  4778.        FCPRELOADPATTERN = libfontconfig.so.?
  4779. #endif
  4780.       XFTPRELOADPATTERN = libXft.so.?
  4781.   XRENDERPRELOADPATTERN = libXrender.so.?
  4782.     XFONTPRELOADPATTERN = libXfont*.so.?
  4783.  
  4784.